Multithreading 线程-共享变量
我有一个多线程的系统。我想在线程中创建一个对象,在这个线程中运行的每个对象都可以查看这个对象 例如 当我使用GetCurrentThreadID时,如果我从同一线程调用它,我总是得到相同的id 例如,我想调用getSharedObject,如果我从同一个对象调用它,就会始终看到同一个对象。所以我需要将这个对象写入一个内存位置,使同一线程中的任何对象都可以看到这个对象 使用Windows API,是否还有其他方法可以做到这一点?还是我必须自己做Multithreading 线程-共享变量,multithreading,memory,shared,Multithreading,Memory,Shared,我有一个多线程的系统。我想在线程中创建一个对象,在这个线程中运行的每个对象都可以查看这个对象 例如 当我使用GetCurrentThreadID时,如果我从同一线程调用它,我总是得到相同的id 例如,我想调用getSharedObject,如果我从同一个对象调用它,就会始终看到同一个对象。所以我需要将这个对象写入一个内存位置,使同一线程中的任何对象都可以看到这个对象 使用Windows API,是否还有其他方法可以做到这一点?还是我必须自己做 谢谢 如果保存对象指针的变量是全局变量,那么线程中的
谢谢 如果保存对象指针的变量是全局变量,那么线程中的任何代码都可以访问它。对于这一点,来自任何其他线程的任何代码也可以 如果希望每个线程看到不同的对象,则需要线程本地存储 请参阅win32函数
TlsAlloc
,TlsSetValue
,TlsGetValue
和TlsFree
另请参见
\u declspec(thread)
您使用的是哪种编程语言?