Обнаружение работающий в Основном Потоке в библиотеке C#

Согласно документации , конечные точки могут быть открыты через HTTP или JMX. По умолчанию Spring будет отображать конечные точки привода через JMX, если вы не настроите его для этого.

Существует таблица, показывающая, какие конечные точки включены в JMX и HTTP по умолчанию. Если вы хотите включить их по HTTP, есть несколько настроек безопасности, о которых вы должны знать, прежде чем раскрывать их (см. Ссылку на документацию выше).

Чтобы предоставить конечные точки привода через HTTP, вам нужно включить запуск spring-starter-web в свою сборку.

Gradle:

compile('org.springframework.boot:spring-boot-starter-web')

Maven:


    org.springframework.boot
    spring-boot-starter-web

Снова, проверьте настройки безопасности перед этим. Более новые версии загрузки должны дать вам хороший безопасный набор значений по умолчанию.

7
задан stachu 22 October 2008 в 12:29
поделиться

2 ответа

Легкое решение в этом случае состоит в том, чтобы объявить статический элемент управления в блоке библиотеки, который создается на Основном потоке UI. Если Вы хотите обнаружить, если библиотеку называют от основного потока, то используйте следующее

if (MyLibraryControl.InvokeRequired)
  //do your thing here
17
ответ дан 6 December 2019 в 10:04
поделиться

Самая простая опция (если у Вас есть удобная форма/управление) состоит в том, чтобы проверить InvokeRequired.

В отсутствие, если это, Вы могли бы попытаться использовать SynchronizationContext моделировать Сообщение или Отправить, проверяя, что распараллеливает, который происходит на? Вызов Отправляет, или Сообщение переключится на поток UI.

2
ответ дан 6 December 2019 в 10:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: