eddy
eddy copied to clipboard
[FEATURE]: Move OWL import execution to a separate thread
Description
In the ontology importer, move the bulk of the work to a separate thread, so that we can monitor and control it's execution.
Motivation
Currently the import happens entirely on the main thread, and there are a lot of places where the importer has to yield to let events be handled to avoid making the application unresponsive. It would be better to move the importer into a separate threads, so that the execution can happen asynchronously and can be monitored and controlled (e.g. cancelled).
Example Use Cases
Imagine trying to import a large ontology, there is currently no way to cancel the import process, and in some places it could still make the application unresponsive to user inputs between calls to processEvents()
.