小编Can*_*ase的帖子

无论如何,是否可以在 Win32 API 中动态释放线程本地存储?

我需要在跨平台项目中使用线程本地存储。在 *IX 下,我使用 pthreads,并且由于作为第二个参数传递的漂亮的析构函数指针可以避免内存泄漏pthread_key_create,但在 Windows 中TlsAlloc没有这样的东西。我也找不到在线程退出时调用任何函数的一般位置(否则我会自制一些在退出时调用的函数指针列表)。

就目前情况而言,我基本上遇到了一种情况,为了实际使用线程本地存储,我需要在堆上分配自己的空间并将指针传递给TlsSetValue,但是如果线程退出......我无法确保内存被释放(除了有人在线程函数末尾显式调用TlsGetValueand delete/ free/ /etc 之外)。HeapFree

有谁知道更好的方法吗?

c++ ssl winapi thread-local-storage

4
推荐指数
1
解决办法
1953
查看次数

标签 统计

c++ ×1

ssl ×1

thread-local-storage ×1

winapi ×1