2014-11-14 34 views
4

線程構建模塊是一種支持使用標準C++代碼的可擴展並行編程的庫。它不需要特殊的語言或編譯器。 通過任何C++編譯器在任何處理器或任何操作系統上使用線程構建模塊使其非常吸引人。針對IOS的英特爾tbb

我想編寫一個iOSandroid的多任務框架。 由於跨平臺的原因,tbb考慮到我的考慮。

我發現Android構建tbb源代碼的說明。 我注意到TBB /編譯這個腳本/ macos.inc

ifeq (ios,$(target)) 
    ifneq (armv7, $(arch)) 
    $(error $(arch) not supported for target 'ios') 
endif 

所以TBB只支持ARMv7架構? 和opencv似乎也不會在IOS中使用TBB。

NSLog(@"%d", cv::getNumThreads()); //return 512, GCD number 

確實TBB支持IOS好嗎? ARMv7的,armv7s,arm64?或者我應該使用boost:thread或stl :: thread來實現跨平臺的原因?如果它支持,我應該如何建立圖書館?

回答

1

我對這些問題沒有直接的答案,但讓我對TBB的可移植性做一些闡述。是的,它的設計與實用一樣便攜。它是開源的,任何人都可以擴展TBB的可移植性。但是,英特爾本身不會在非英特爾硬件上測試TBB,因此無法提供與英特爾架構相同的保證。 ARM體系結構上的TBB由開源社區移植和支持。

因此,您可以自行修改TBB資源,試圖爲iOS構建TBB(非常感謝您的捐助)或/並且您可以聯繫TBB forum上的某人,並尋求幫助或嘗試通過Internet搜索來評估項目,如this one