【发布时间】:2011-11-05 14:39:07
【问题描述】:
我在 Linux 上工作,需要将使用 win32 api 函数的给定代码更改为可以在 linux 上运行的代码
bool ret = ::TlsSetValue(tlsInChessFlag, (void *)(((size_t)TlsGetValue(tlsInChessFlag))+1));
有人可以告诉我 c++ ubuntu 中的等效代码是什么吗? 提前谢谢
【问题讨论】:
我在 Linux 上工作,需要将使用 win32 api 函数的给定代码更改为可以在 linux 上运行的代码
bool ret = ::TlsSetValue(tlsInChessFlag, (void *)(((size_t)TlsGetValue(tlsInChessFlag))+1));
有人可以告诉我 c++ ubuntu 中的等效代码是什么吗? 提前谢谢
【问题讨论】:
【讨论】:
在 Windows 和 Linux 上使用 boost 的可移植线程本地 API。
http://www.boost.org/doc/libs/1_35_0/doc/html/thread/thread_local_storage.html
【讨论】:
你可以使用 thread local storage 的 boost::thread 实现
【讨论】: