https://bugs.kde.org/show_bug.cgi?id=448087

--- Comment #12 from Andreas Grois <a...@grois.info> ---
I think the MR is done for now.
I've modified the Demo, Example and Templates to compile with the immutable
API, modified the tutorial and readme and written a changelog.

While working on the Demo I found another issue, with Tree Models,
new_data_ready() and threading. The auto-generated C++ code was accessing the
data model from the thread that was emitting new_data_ready() before sending
the Signal, causing an unexpected access to data owned by the UI-thread.
Projects could have worked around this by storing their data behind an RwLock,
but given that the access to the data is unnecessary for the connection between
new_data_ready() and fetch_more() to work (only the internal Id is forwarded to
Rust for fetch_more(), all other data is discarded anyhow), I now removed the
model-access from the worker-thread.

Trees still have other Signals that access the model from the thread emitting
the Signal, but those Signals are directly related to user-facing data. If
those are to be emitted from a worker thread, the data has to be behind an
RwLock/Mutex anyhow.

In any case, I've removed the WIP status from the MR, and will now start using
the modified version of the binding generator in my own project.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to