|
Add a new variant to ThreadPoolTaskExecutor tests, similar to ThreadPoolExecutorCommonTests, that uses a non-synchronized mocked NetworkInterface to allow races to occur in our testing environment.
Existing tests use NetworkInterfaceMockinterface, which synchronizes with the executor threads for deterministic execution of tests:
The thread acting as the "network" and the executor run thread are highly synchronized by this code, allowing for deterministic control of operation interleaving.
This synchronization does not allow data-races to show up in our testing environment, in particular under TSAN variants.
|