摘要:
线程局部存储区(Thread Local Storage, TLS):将数据与一个正在执行的特定函数关联起来。 线程局部存储是将现有函数变为线程安全的有用技巧。 当一个函数中访问并修改全局或静态变量,那么这个函数就是不可重入的。若使之变为可重入的函数,可以使用线程同步,也可以使用线程局部存储。线程局部存储为每一个访问此变量的线程提供一个此变量独立的副本,线程可以修改此变量,而不会影响到其他线程。 注:通过以上描述可以看出,线程局部存储不是用来共享变量的。 C标准库中的strtok就是一个典型的不可重入函数。当程序第一次调用它时,该函数会将传入的字符串地址保存在它自己的静态变量中... 阅读全文