Commit bc114a0
authored
Fix rtde client shutdown (UniversalRobots#474)
Destroying an RTDE client with a lost (but not shutdown) connection can
hang. This can happen for example due to a server crash or a lost
network / plugged cable.
This commit adds a test case for that where the fake RTDE server simply
stops sending data.
Pausing an active RTDE communication before disconnecting shouldn't be
strictly necessary and as far as I remember was added as a workaround to
mitigate callback issues. These should not be present since we
refactored the RTDEClient to no longer use the pipeline (which it never
fully used, anyway).
Thus, this structure should allow a cleaner implementation with a
clearer logic flow.1 parent 47c18b0 commit bc114a0
2 files changed
Lines changed: 28 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
94 | | - | |
95 | | - | |
96 | 94 | | |
97 | 95 | | |
98 | 96 | | |
| |||
510 | 508 | | |
511 | 509 | | |
512 | 510 | | |
513 | | - | |
514 | | - | |
515 | | - | |
516 | | - | |
517 | | - | |
518 | | - | |
519 | | - | |
520 | | - | |
521 | 511 | | |
522 | 512 | | |
523 | 513 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| 46 | + | |
46 | 47 | | |
47 | 48 | | |
48 | 49 | | |
| |||
419 | 420 | | |
420 | 421 | | |
421 | 422 | | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
422 | 450 | | |
423 | 451 | | |
424 | 452 | | |
| |||
0 commit comments