Hi @foosel,
Sorry to tag you directly. This is the question probably only you can answer.
Are the variables such as _printer
and _settings
injected into plugins thread-safe? My plugin (OctoPrint Anywhere) has a few long-running threads that performs read operations such as:
self._printer.get_state_id()
self._settings.settings.effective['temperature']
self._printer.get_current_data()
The reason why I ask this question is that some users complained that my plugin cause crashes (apparently OctoPrint process quit, and/or even the OS died). But I went through every line of my code and the only remote possibility that my plugin could cause this kind of crash is some kind of thread-safety issue.
Your prompt response will be appreciated!