QTextStream
Posted: Sat Apr 10 2021 10:31 am
Given this bug first appeared in Qt 4.5
https://bugreports.qt.io/browse/QTBUG-12055
Did CopperSpice fix it?
Hopefully, in their "spare" time, the CopperSpice developers are removing/fixing the "single threadedness" of Qt.
Only being able to paint in the main event loop is a severe flaw.
The lack of non-main-event-loop tests for objects hindered progress. Most all of the testing scenarios happened in the main event loop, not off in a thread. As a result, queued events aren't really tested.
Probably the one that stuck in my craw the hardest was QSqlTableModel and really all of the QSql stuff. They are mostly forcing database I/O to occur in the main event loop. When your database is a data warehouse that may have cold storage, this locks the UI until a robot or operator mounts the storage media. UI can lock up with a multi-user hot database too. You just need to find yourself waiting in the transaction queue behind a dozen large requests issued by other users . . . or a DBA adding an index to a very large table.
https://bugreports.qt.io/browse/QTBUG-12055
Did CopperSpice fix it?
Hopefully, in their "spare" time, the CopperSpice developers are removing/fixing the "single threadedness" of Qt.
Only being able to paint in the main event loop is a severe flaw.
The lack of non-main-event-loop tests for objects hindered progress. Most all of the testing scenarios happened in the main event loop, not off in a thread. As a result, queued events aren't really tested.
Probably the one that stuck in my craw the hardest was QSqlTableModel and really all of the QSql stuff. They are mostly forcing database I/O to occur in the main event loop. When your database is a data warehouse that may have cold storage, this locks the UI until a robot or operator mounts the storage media. UI can lock up with a multi-user hot database too. You just need to find yourself waiting in the transaction queue behind a dozen large requests issued by other users . . . or a DBA adding an index to a very large table.