그래서이 스레드 ID를 boost::lexical_cast<std::string>(boost::this_thread::get_id())
문자열로 캐스팅했습니다. 이제 thread :: id로 되돌릴 수 있을까?문자열에서 Boost :: thread :: id를 다시 캐스팅하는 방법은 무엇입니까?
1
A
답변
1
당신이 전화 언급 때문에이> 중단 난 당신이 부스트 : 스레드 객체가 아닌 부스트 : : 스레드를 필요로 가정합니다.
스레드를 생성 할 때 string-boost :: thread 객체의 매핑을 만드는 것이 가장 좋습니다.
1
'boost :: lexical_cast'를 사용하여 int/short/the_type_you_want 문자열을 전송할 수 있다고 생각합니다. 그것은 다음과 같을 것이다 : - : ID 객체
boost::lexical_cast<int>(string_of_thread_id);
+0
글쎄 .. 그리고 그것을 새로운 boost :: thread :: id 객체에 어떻게 공급할 것인가? – Rella
시도해 보셨습니까? –
@JackOfAllTrades : 내 ID가 문자열입니까? 네 [여기] (http://code.google.com/p/cloudobserver/source/detail?r=1443) 그리고, 알다시피, 그것은 많은 것을 빠르게합니다! (10 %) (thread :: id의 맵을 통해서보다는 문자열의 맵을 반복한다). 그러나 그 후에는 문자열의 형태로만 액세스 할 수있는 스레드 링크를 인터럽트하고 실제 스레드 :: id - 문자열이 아닌 인터럽트를 호출하여 인터럽트를 한 가지 더 필요할 수도 있음을 강조 할 수 있습니다. – Rella