Skip to content

RemotePluginProcess: don't use a thread for cancel

username-removed-10562 requested to merge plugin-cancel into master

The CancelThread implementation is complex and smells of poor knowledge and cargo programming. Here we remove that class, and instead handle cancelling events in the same thread: this makes code much simpler and is enough for our plugins, which always spend more time waiting for network replies than in actual computations.

In order to achieve this, a small change is needed to the BlobIoHandler class, to let its client know when it's in the middle of a read operation (we don't want to read from the socket at that time, or we'd be stealing data from it).

The ssotest plugin also needed to be adjusted to avoid using mutexes and replace busy waits with a QTimer.

Merge request reports