我在 C++ 中有一个通用的单例类,它在单线程中工作,但现在我要去多线程环境,我想确保单例在那里工作,而崩溃的一件事是多个线程试图在那个单指针上调用 delete。有没有办法不使用锁来避免这个错误。
class singleton
{
public :
static singleton* getinstance();
private :
singleton();
singleton(const singleton& that);
singleton& operator=(const singleton& that);
static singleton* ptr;
};