Как выделить локальное хранилище потока?

У меня есть статическая переменная в моей функции, но я бы хотел, чтобы она была статической для каждого потока .

Как я могу выделить память для моего класса C ++, чтобы каждый поток имел свою собственную копию экземпляра класса?

AnotherClass::threadSpecificAction()
{
  // How to allocate this with thread local storage?
  static MyClass *instance = new MyClass();

  instance->doSomething();
}

Это в Linux. Я не использую C ++ 0x, а это gcc v3.4.6.

57
задан WilliamKF 16 May 2011 в 18:37
поделиться