讓我們假設我有幾個層次:對推式模型中的每個圖層使用TaskFactory.StartNew是否是一種很好的做法?
- 經理從套接字讀取數據
- 經理訂閱了#1和大約需要持續的數據
- 經理訂閱了#2和護理需要關心的數據的反序列化和傳播爲鍵入了在某些事件類型
- WPF控制器,顯示數據insterested管理者(訂閱#3)
截至目前我使用
TaskFactory.StartNew(()=>subscriber.Publish(data));
在每一層上。原因是我不想想要依靠這樣一個事實,即每個經理都會盡快完成他的工作,套接字管理器沒有卡住。
這是一個很好的方法嗎?
編輯 假設插槽管理器接收價格更新 有10個管理者訂閱插槽經理,所以當插座管理者傳播.StartNew被稱爲10倍的消息。
管理者#2,#3什麼也不做,但可以通過.StartNew消息每1個消息,以便最終從插座30倍.StartNew傳播到單個訂戶
()被調用。
多線程肯定沒有內在的錯誤。你能詳細說明你的具體問題嗎?總共有多少'.StartNew()'行可以同時運行? –
爲什麼不使用Task.Run()? – Transcendent
@Intercendent爲什麼要使用它? http://stackoverflow.com/questions/22087005/task-factory-startnew-vs-new-task此鏈接暗示否則 –