【发布时间】:2012-01-27 13:06:13
【问题描述】:
好的,所以我有三个课程,ClassOne、ClassTwo 和 ClassThree。
ClassOne 在Main 线程中运行,ClassTwo 在ThreadTwo 线程中运行,ClassThree 在ThreadThree 中运行。
在ClassTwo 和ClassThree 中,我拨打ClassOne 的电话,反之亦然。
ClassTwo::SomeMethod(){
int l_SomeVar = m_ClassOnePointer->SomeAccessorMethod() // return m_SomeVariable
int l_SomeVar = m_ClassOnePointer->SomeConstAccessor() // SomeConstAccessor() const;
int l_SomeVar = m_ClassOnePointer->m_SomeVariable; // Just a standard public int (not const, static, or volatile).
m_ClassOnePointer->m_SetSomeVariable(30);
m_ClassOnePointer->m_SomeVariable = 30;
目前我使用访问器和 const 访问器,但我不知道它是否对线程安全,如果不是,我将如何在没有锁的情况下安全地执行此操作。
【问题讨论】:
标签: multithreading winapi thread-safety