我很好奇線程創建對運行.NET微型框架的netduino有什麼影響。人們普遍認爲線程有一個inherent overhead給他們,但我想知道是否有人知道在嵌入式環境中是否存在.net micro的優化,以及任何人都可以給我一些細節, (分配多少內存,生成需要多少個週期等)。.net微型框架中創建線程的開銷是多少?
回答
根據我的經驗,NETMF下每個線程的內存成本大約爲1K。至於分配線程所需的時間,如果您正在考慮這樣的問題,那麼可能需要閱讀嵌入式系統最佳實踐。我不是在嘲笑你,還有相當一段難得的傳說,可以爲你節省心痛和麻煩。例如,線程的事情。如果你想要可靠性,你必須保證最大的資源需求。如果你打算說「不超過5個線程」,那麼你最好在你的初始化過程中啓動所有五個線程,並分配他們想要的所有資源。如果你不能這樣做,那麼你無法保證你的系統在負載下的穩定性。這樣做的副作用是,啓動它們所需的時間與系統的響應無關,儘管它稍微影響啓動時間。
上下文切換存在開銷。我無法給你量化的數字,因爲我從來不需要對它進行基準測試。 NETMF正在金屬上實施;您可以從您可以從ATMEL下載的SoC文檔獲得一些洞察。或者,如果你在netduino論壇上提問,克里斯可以告訴你一個公平的機會。
如果這是一個家庭作業問題,然後採取漢斯的建議,並看看源代碼。如果您正在尋找構建應用程序並評估平臺適用性的應用程序,那麼在不同線程上執行時序敏感的事情時,我從來沒有遇到切換延遲,但我從不使用超過三個或四個線程,其中一個以循環方式服務多個邏輯進程(所有時序不敏感的東西)。
再次,關鍵的長期穩定性是避免什麼的動態分配。
顯式編碼循環法的優點是您可以控制邏輯進程的順序。
謝謝,這不是作業,也不是我開發系統。我只是好奇而已。謝謝 – devshorts
然後,作爲一個廣泛的觀察,我會補充一點,我發現Netduino非常適合任何不需要高速採樣和計算的任何事情,我爲其設計了自己的背板,以簡化繼電器和伺服電機的機箱安裝,功率調節和一個將COM1重新映射到COM2的套接字,這樣我就可以使用兩個希望在COM1上的屏蔽。我發現簡單性的交易非常有價值。 –
- 1. .NET微型框架+ ARM howto
- 2. 實體框架跟蹤的開銷是多少?
- 3. 爲.NET微型框架創建自己的SpiDevice的最佳方式是什麼?
- 4. BTrace的開銷是多少
- 5. C#多線程:微線程睡眠開銷
- 6. 創建多少個線程?
- 7. .NET微型框架和.NET精簡框架有什麼區別?
- 8. 在.NET DataTable中存儲數據的內存開銷是多少?
- 9. D中屬性的開銷是多少?
- 10. TCP套接字和.net微型框架
- 11. .NET微型框架解析雙重
- 12. 像Hibernate這樣的框架會帶來多少開銷?
- 13. 是否有人在Visual Studio 2010中使用.NET微型框架?
- 14. Android中的服務開銷(我應該創建多少)
- 15. .NET框架線程「血統」
- 16. Netduino程序員.net微框架
- 17. 創建和銷燬線程
- 18. 在Python中使用SocketServer框架創建多線程服務器
- 19. 巨大功能的開銷是多少?
- 20. Castle Active Record的開銷是多少?
- 21. 減少線程上下文的開銷,在多線程應用程序
- 22. 微軟同步框架建議的開源框架?
- 23. 多少表開銷太多?
- 24. 我應該創建多少個線程?
- 25. Node實際創建多少個線程?
- 26. Rust的選項類型的開銷是多少?
- 27. 線程開銷
- 28. 從Oracle架構撤銷創建類型
- 29. 各種.Net框架版本的市場份額是多少?
- 30. .NET框架的部署速度是多少?
.NET Micro是開源的,你爲什麼不看一看?並衡量你想知道的。 –