Проблема в том, что поток, с которым был связан объект ISynchronizeInvoke
, больше не существует.Это может произойти, например, если вы порождаете фоновый поток и поток пользовательского интерфейса завершается до завершения фоновой задачи.Поток больше не существует, поэтому вызывать нечего, и вы получите исключение.
Нет хорошего способа предотвратить это.Лучший способ действий - заключить вызов Invoke
в try / catch
, который обрабатывает это исключение.