“线程安全数据”与“线程安全代码/功能”之间的区别

时间:2019-12-23 22:35:03

标签: c++ multithreading class concurrency thread-safety

在研究线程安全性时,我偶然发现了这些术语,但没有清晰的画面。线程安全数据和线程安全代码/函数之间有什么区别?

1 个答案:

答案 0 :(得分:0)

thread-safe data:不可破坏的数据(由于错误的线程代码)。

thread-safe code/function:防止共享数据损坏的代码。一个进程中的所有线程共享相同的内存数据。

如何防止腐败?当两个线程试图一次修改相同的数据时(并行读取是安全的),它就会出现。防止的技术是“互斥”,“信号量”和“条件变量”。参见docs