我正在使用pthread_mutex_t
锁来“锁定”一个复杂的类型变量 a ( std::list
)。我说“锁定”是因为不像C#那样pthread_mutex_lock()
使用实际的std::list
变量。所以对象不知道它被锁定以供访问。lock
std::list
所以我真的不知道2个问题的答案:
1) 将复杂类型标记为volatile
(除int
,float
等之外)在 C++ 中是否有任何影响?我不确定,因为上面链接的文章列出了(对于 C#)只有原始类型和引用类型能够被标记volatile
。
volatile
2)只要我手动锁定它们,我是否需要标记 C++ 复杂类型?