You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Atm we have one NativeCallable.listener per block signature. Each NativeCallable.listener has its own receive port. This means that two callbacks with different signatures can be called in a different order to the order that the native thread called them in. This can cause problems, especially for protocol implementers.
To fix this we can use a single NativeCallable.listener for all blocks in the isolate. The downside of this is it'll involve dynamic dispatch, which is slightly inefficient. But I think that's negligible in this async case.
The messages arrive in order even when the block signatures are different (#1781), so using a single listener won't help. Gonna work on this approach instead: #1647
Atm we have one
NativeCallable.listener
per block signature. EachNativeCallable.listener
has its own receive port. This means that two callbacks with different signatures can be called in a different order to the order that the native thread called them in. This can cause problems, especially for protocol implementers.To fix this we can use a single
NativeCallable.listener
for all blocks in the isolate. The downside of this is it'll involve dynamic dispatch, which is slightly inefficient. But I think that's negligible in this async case.dart-lang/http#1413
The text was updated successfully, but these errors were encountered: