조건부 신호 메커니즘과 마찬가지로, 어떤 신호가 수신되거나 어떤 변수가 참이 될 때까지 하나의 작업을 기다려야한다. Boost 라이브러리는이 메커니즘을 제공하지만 TBB는 제공하지 않습니다.인텔 TBB가 부스트와 같은 조건부 변수를 제공하지 않은 이유는 무엇입니까?
TBB에서이 사례를 구현하는 방법은 무엇입니까?
조건부 신호 메커니즘과 마찬가지로, 어떤 신호가 수신되거나 어떤 변수가 참이 될 때까지 하나의 작업을 기다려야한다. Boost 라이브러리는이 메커니즘을 제공하지만 TBB는 제공하지 않습니다.인텔 TBB가 부스트와 같은 조건부 변수를 제공하지 않은 이유는 무엇입니까?
TBB에서이 사례를 구현하는 방법은 무엇입니까?
아주 오래된 TBB를 사용하고 있습니까? "대기"
갖는 작업 TBB는 과거에 잘 처리하지 않은 일이지만, 현재 TBB news이 포함
ISO C++ 스레드 클래스 - OS 스레드의 thin 휴대용 래퍼. ISO C++ 200x 클래스 스레드 근사치 ( http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2691.pdf의 섹션 30.2)는 입니다. 이제 TBB를 사용하면 에 대해 작업 기반 대 스레드 기반 중에서 가장 적합한 것을 선택할 수 있습니다. 은 "작품은"정말 많은 계산보다 대기 때 스레드 등에 관해서는, 일반적으로 작업보다는 더 낫다 :
* GUI, I/O or network interface threads. * Threads that need to wait on external events. * Programs that previously needed to use both native threads and Intel® TBB tasks.
그들은 TBB의 작업 병렬 처리는 보편적 인 만병 통치약이 아니다 인정하는 것, 즉 I/O를 위해 때때로 "전통적인"스레딩 모델과 같은 것을 필요로합니다. 그리고 실제로 최신 reference manual을 확인하면 TBB에 조건 변수가 포함되어 있습니다! (8.4 절 참조)