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
Context: connection ids are integers used to match message senders with the paired message receivers for a given executor.
Currently the message routers use connection ids that are simple integers, and always start counting from zero.
To aid diagnosis in cases where things go wrong, it may make sense to use some kind of UUID instead. In theory this shouldn't be necessary, but we've seen some rather strange failure modes on Windows where it seems possible that distinct QObjects with non-overlapping lifetimes that happen to exist at the same memory address are being confused with each other at Qt / PyQt level.
The text was updated successfully, but these errors were encountered:
but we've seen some rather strange failure modes on Windows
The explanations for these failure modes turned out to be rather more prosaic: tasks were being submitted from worker threads (see #305). However, more unique connection ids may still be a good idea.
Context: connection ids are integers used to match message senders with the paired message receivers for a given executor.
Currently the message routers use connection ids that are simple integers, and always start counting from zero.
To aid diagnosis in cases where things go wrong, it may make sense to use some kind of UUID instead. In theory this shouldn't be necessary, but we've seen some rather strange failure modes on Windows where it seems possible that distinct QObjects with non-overlapping lifetimes that happen to exist at the same memory address are being confused with each other at Qt / PyQt level.
The text was updated successfully, but these errors were encountered: