2013-09-23 5 views
0

С the documentation не говорит, что Visual Studio Automation и Extensibility API является потокобезопасным, я предполагаю, что это не так. Поэтому мой вопрос заключается в том, как вернуть результаты потоковых потоков в поток, который может безопасно изменять состояние Visual Studio?Как правильно отредактировать «основной поток» Visual Studio?

+0

Я не вижу ничего о безопасности потоков на странице, которую вы связали. У них нет примеров кода в SDK? –

ответ

2

На самом деле это поточно-безопасный. Объектная модель расширяемости построена поверх COM. Который, в отличие от .NET, гарантирует, что вызовы объектов, объявляющих себя небезопасными потоками, создаются поточно-безопасным способом автоматически. Он делает это, маршируя вызов из рабочего потока в поток владельца объекта. Это работает без вас и не может помочь. Иногда это приводит к неутешительной работе и ужасному сообщению «Ожидание фоновой операции», но в целом это работает без проблем, если вам нечего делать.

+0

ИМХО это отвечает на вопрос довольно здорово. –

Смежные вопросы