2012-10-24 71 views
0

我試圖以類似於std::vector的方式在TBB (螺紋構件塊)中獲取對concurrent_vector的內存的引用。tbb - concurrent_vector地址到內存?

因此,std::vector將被訪問像:&stdVector[0]

concurrent_vector的等效項不起作用:&tbbVector[0]

我想這可能與如何將內存存儲在內部 爲了併發,但有沒有辦法做到這一點?

回答

2

與std :: vector不同,concurrent_vector不提供連續存儲的保證。因此,考慮第一個元素的地址並且除了訪問第一個元素之外的任何事情都不是一個好主意。

+0

嗯,我有一個函數,需要一個指向數據的指針作爲參數 - 我必須首先卸載到數組,然後再傳遞它? – user1043761

+0

如果您需要一個指向原始數據數組的指針,那麼您需要將其複製。 concurrent_vector不是數據的原始指針。 – Rick