On Tuesday, July 6, 2021 at 12:10:40 PM UTC-7, Petro Kazmirchuk wrote:Qt upgrades).
In my company we have a complex C++/Qt/Tcl application, and a lot of effort was invested in integrating Tcl and Qt event loops. It was far from trivial, and still doesn't work reliably after 10+ years of polishing (and occasionally gets broken with
Interesting. My experience was the opposite in that I found it fairly uncomplicated. I implemented a custom Qt/Tcl notifier to integrate the Qt and Tcl event loops. It's worked pretty much flawlessly and is still in use by my former employer. Thetricky parts I discovered are these: 1) Tcl_DoOneEvent() has to be at the top of the QtApplication event loop. At least at the time I implemented this, Qt had no way to acknowledge the existence of other event queues, whereas, Tcl is designed with this
https://ssl.webpack.de/www.eurotcl.eu/pastevents.html#eurotcl2019 https://youtu.be/1CRhEBzFjFcHi Brian,
Instead of integrating Tcl interpreter in C++, I highly recommend to have a proper RPC framework to communicate between C++/Qt and Tcl in a separate process.That's one way to avoid problems :)
On Tuesday, July 6, 2021 at 5:48:29 PM UTC-4, briang wrote:Qt upgrades).
On Tuesday, July 6, 2021 at 12:10:40 PM UTC-7, Petro Kazmirchuk wrote:
In my company we have a complex C++/Qt/Tcl application, and a lot of effort was invested in integrating Tcl and Qt event loops. It was far from trivial, and still doesn't work reliably after 10+ years of polishing (and occasionally gets broken with
tricky parts I discovered are these: 1) Tcl_DoOneEvent() has to be at the top of the QtApplication event loop. At least at the time I implemented this, Qt had no way to acknowledge the existence of other event queues, whereas, Tcl is designed with thisInteresting. My experience was the opposite in that I found it fairly uncomplicated. I implemented a custom Qt/Tcl notifier to integrate the Qt and Tcl event loops. It's worked pretty much flawlessly and is still in use by my former employer. The
what that means to the notifier implementation (versus what's in the paper/presentation?)https://ssl.webpack.de/www.eurotcl.eu/pastevents.html#eurotcl2019 https://youtu.be/1CRhEBzFjFcHi Brian,
Instead of integrating Tcl interpreter in C++, I highly recommend to have a proper RPC framework to communicate between C++/Qt and Tcl in a separate process.That's one way to avoid problems :)
I found the presentation you made and the paper you wrote on Tcl/Qt event loop integration to very informative. I plan to go down that path and start the implementation in an existing Qt application.
But, I didn't see anything in either paper about the requirement for "Thread-enabled Tcl" and "custom notifier must be thread-aware". Was that something you discovered after the paper and presentation? Can you elaborate on why threading is required and
Thanks!
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 498 |
Nodes: | 16 (3 / 13) |
Uptime: | 13:05:11 |
Calls: | 9,823 |
Calls today: | 2 |
Files: | 13,759 |
Messages: | 6,190,954 |