DescriptionThe sweeper must not be running during isolate shutdown.
In release mode, there seems to be nothing to prevent this.
In debug mode, the "Verify" call waits for the sweeper, but there is still a race between the task count update and the ExitIsolateAsHelper call, which could cause problems.
Fix both of these, and add more assertions and verbose error messages.
- make sweeper task cleanly exit isolate *before* notifying
- wait for sweeper before shutting down isolate
- verbose pthread failures
BUG=
R=asiva@google.com
Committed: https://github.com/dart-lang/sdk/commit/868d2c6c3e949a03c395efc2c3bfbe0761a295dc
Patch Set 1 #Patch Set 2 : Avoid shutdown race; remove detroyed_ flag. #
Total comments: 2
Patch Set 3 : Move wait per suggestion; port to all platforms. #
Messages
Total messages: 6 (1 generated)
|