[C++] Problemas com Wait e notify

1 resposta
Sad7

Boa tarde galera,
estou com seguinte problema,

supondo que eu tenho uma classe A e uma outra B.

classe A (thread):

class A {
  void run() { // metodo da thread
           while(true) {
    		boost::unique_lock<boost::mutex> lockIO(muteIO);
		waitIO.wait(lockIO);

           cout << "aaaa" << endl;
       }
  }

 void notify() {
  boost::lock_guard<boost::mutex> unlockIO(muteIO); // aqui da o erro
	waitIO.notify_all();
 }
}

classe B:

class B {
  A classeA;
  classeA.notify();
}

da o seguinte erro:

No source available for "__kernel_vsyscall() at 0x12d422"

a pergunta eh, o q eh isso?!
eu nao sei o que fazer…

alguem jah teve alguma coisa parecida com isso.?

Valeeuu!

1 Resposta

Sad7

Fiz um teste aqui agora,
se eu chamar o notify de dentro da propria classe A funciona normal.

:frowning:

mais eu preciso chamar ela da outra classe

edit----
no C# existe esse uma coisa parecida que eh resolvida com a propriedade CheckForIllegalCrossThreadCalls.
sera q o C++ tem esse mesmo problema!?

Criado 19 de agosto de 2010
Ultima resposta 19 de ago. de 2010
Respostas 1
Participantes 1