C #, связь между основным потоком и дочернего потока, как достичь (оборотов в минуту)

Обычно у нас есть такое требование:
категория поддержки медленной обработки оборудования, такие как сетевые коммуникации, последовательная связь, печать и т.д.
в это время часто должны быть заключенным в потоке внутри класса, так что класс поддерживает асинхронную обработку, а затем опубликовать событие уведомления или обратный вызов делегат основной поток ,
потому что класс должен быть хороший пакет, наружная резьба не видна, в то время как внутренний класс только событие не связано с интерфейсом, то BeginInvoke Контрольного потерял сюжет. На данный момент я больше в любовь с SynchronizationContext объектов, простой и простой
Пусть я проектирую класс TestClient, там Connected событий

класс TestClient {личное workThread Thread; частный SynchronizationContext mainThreadSynContext;

        общественный TestClient () // Конструктор конечно {mainThreadSynContext = SynchronizationContext.Current; // где запись контекста главного потока workThread = новая тема (новая ThreadStart (DoWork)); // создать новый поток является основным потоком выполнения}

        частная пустота OnConnected (состояний объекта) // Поскольку это основной объект синхронизации потоков Сообщение называется, выполняется в основном потоке {// здесь обратно в основной поток внутри // сделать что-то}

        частная пустота DoWork () // это workThread поток выполнения {// сделать что-то здесь (какая связь ...)

            // Это и закончил работу

            mainThreadSynContext.Post (новый SendOrPostCallback (OnConnected), NULL); // уведомить основной поток}} --------------------- Автор: HonorDuan Источник: CSDN Оригинал: HTTPS : //blog.csdn.net/qq_23127851/article/details/78270988 Предупреждение: Данная статья является блоггером оригинал статьи, воспроизведены, пожалуйста, приложите Боуэн ссылку!

https://bbs.csdn.net/topics/210063471

рекомендация

отwww.cnblogs.com/xihong2014/p/10927171.html
рекомендация