Commit 889ca99
committed
Fix concurrency issue with AFSelector
Clients may iterate upon AFSelector.selectedKeys() while the selected
keys are modified in another thread.
Change the underlying datastructure to be thread-safe (use
ConcurrentHashMap), and add all "ready" selectors even if they're marked
invalid (they will be removed later).
We reimplement the fix as the original patch caused a FileDescriptor
leak and TIPC test failures.
#142
#1451 parent 4b2bfc8 commit 889ca99
1 file changed
Lines changed: 5 additions & 6 deletions
Lines changed: 5 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | | - | |
33 | 32 | | |
34 | 33 | | |
35 | 34 | | |
| |||
47 | 46 | | |
48 | 47 | | |
49 | 48 | | |
50 | | - | |
51 | | - | |
| 49 | + | |
| 50 | + | |
52 | 51 | | |
53 | 52 | | |
54 | 53 | | |
| |||
185 | 184 | | |
186 | 185 | | |
187 | 186 | | |
188 | | - | |
189 | | - | |
| 187 | + | |
| 188 | + | |
190 | 189 | | |
191 | 190 | | |
192 | 191 | | |
| |||
197 | 196 | | |
198 | 197 | | |
199 | 198 | | |
200 | | - | |
| 199 | + | |
201 | 200 | | |
202 | 201 | | |
203 | 202 | | |
| |||
0 commit comments