Open andydotxyz opened 9 months ago
Re-merge draw and event into one thread
This might be the easiest path, but it isn't necessarily the only one. We can keep them on separate threads as long as we have them lock when reading or writing state.
That being said, unless we need to work around platform issues (ie #2 on the checklist), merging them to one thread might be the way to go.
I'll also add another checklist item for removing all the now-unneeded locks/sync stuff throughout the codebase
Re-merge draw and event into one thread
This might be the easiest path, but it isn't necessarily the only one. We can keep them on separate threads as long as we have them lock when reading or writing state.
Yes, there could be locking based solutions - but part of this is trying to find the simplest solution, so reverting the thread split seems like a good start.
Checklist
Is your feature request related to a problem?
To work on race conditions and many locking challenges we agreed to revise the threading model (the "App thread"). This issue tracks the work required.
Is it possible to construct a solution with the existing API?
No response
Describe the solution you'd like to see.
noCopy
struct that is a dummy implementation ofsync.Locker
to BaseWidget sogo vet
can still complain about passing widgets by value