Commit b1667a2
committed
[jcw-gen] DON'T generate Java Callable Wrappers in parallel
Partially reverst commit f0fa3c3.
The problem with f0fa3c3 is that Mono.Cecil follows the normal .NET
guidelines with respect to thread safety: static members are
thread-safe, but *instance members are not thread safe*.
Meaning accessing e.g. `TypeDefinition.Methods` isn't thread-safe.
Attempting to generate Java Callable Wrappers in parallel can result
in "bizarre" Javav code wherein not all Java members which should be
overridden are actually overidden, presumably because the
TypeDefinition of the type, some base type, or some implemented
interface, is being used concurrently from multiple threads.
Revert the Task use from commit f0fa3c3 and generate
Java Callable Wrappers sequentially, so that they're valid.1 parent 9c3e743 commit b1667a2
File tree
2 files changed
+5
-67
lines changed- src/Java.Interop.Tools.JavaCallableWrappers/Test/Java.Interop.Tools.JavaCallableWrappers
- tools/jcw-gen
2 files changed
+5
-67
lines changedLines changed: 0 additions & 63 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | 33 | | |
97 | 34 | | |
98 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
67 | 68 | | |
68 | 69 | | |
69 | 70 | | |
| |||
0 commit comments