Jak wykonać funkcję członka klasy w oddzielnym wątku przy użyciu klasy wątków C ++ 11?

Próbuję użyć C ++ 11std::thread klasa do uruchomienia funkcji składowej klasy do wykonania równolegle.

Kod pliku nagłówkowego jest podobny do:

class SomeClass {
    vector<int> classVector;
    void threadFunction(bool arg1, bool arg2);
public:
    void otherFunction();
};

Plik cpp jest podobny do:

void SomeClass::threadFunction(bool arg1, bool arg2) {
    //thread task
}

void SomeClass::otherFunction() {
    thread t1(&SomeClass::threadFunction, arg1, arg2, *this);
    t1.join();
}

Używam Xcode 4.6.1 w systemie Mac OS X 10.8.3. Kompilatorem, którego używam, jest Apple LLVM 4.2, który został dostarczony z Xcode.

Powyższy kod nie działa. Błąd kompilatora mówi tak"Attempted to use deleted function".

Na linii tworzenia nici pokazuje następujący masaż.

In instantiation of function template specialization 'std::__1::thread::thread<void (SomeClass::*)(bool, bool), bool &, bool &, FETD2DSolver &, void>' requested here

Jestem nowy w C ++ 11 i klasie wątków. Czy ktoś może mi pomóc?

questionAnswers(2)

yourAnswerToTheQuestion