2013-08-04 64 views
1

我已經嘗試了一些使用多線程的c + + 11正則表達式的實驗,我認爲它不是多線程安全庫。C++ 11正則表達式不是多線程安全庫嗎?

我只是不能解釋更多。請幫我:(

+3

你的具體問題是什麼? – Mat

+0

對不起,解釋不好。我使用while(std :: regex (s,m,e){} code and I get deadlock。 –

+0

@Young:這沒有意義 - 你在'while'中的表達式返回s td :: regex',而不是'bool'。這不應該編譯。請發佈您遇到問題的實際代碼,也許我們可以提供更好的幫助。 –

回答

3

調用regexconst成員函數是線程安全的操作。調用非const成員函數並不保證線程安全的。

考慮做出這樣的事情線程的唯一途徑如果你想要線程安全,那麼只需保護regex一個鎖。