... 요청하기 전에 DUP를 검색하기 위해 최선을 다했다
죄송합니다. 처리는 4 단계로 쉽게 나눌 수 있으며 각 단계는 이전 단계에서 생성 된 중간 값에서 작동합니다. 프로세싱은 1/30th에서 처리 할 수있는 것보다 무거워졌지만,이 애플리케이션을 4 개의 스레드로 분할하여 파이프 라인으로 전환 할 수 있다면 각 단계가 그보다 작고 모든 것이 실시간으로 실행됩니다. 완전히 받아 들일 수있는 4 프레임 래그).
저는 멀티 스레딩 프로그래밍에 상당히 익숙하며, 각 프레임의 시작 부분에서 각 스레드를 시작/중지하는 메커니즘을 찾을 수 없으므로 모든 스레드가 함께 진행됩니다 끝날 때마다 "주기"마다 완성 된 프레임. 내가 찾은 모든 프레임 워크/라이브러리는 대기열 및 작업자 스레드를 사용하여로드 균형 조정에 대해 걱정하는 것 같지만 여기에 필요한 것은 아닙니다. 내가 동기화 할 수 있다고 가정 할 때 4 개의 스레드가 수행합니다.
아무도 C++을 사용하여 시작점을 가리킬 수 있습니까?
감사합니다.
스레딩 라이브러리 (예 : 부스트)를 사용하고 있습니까? 아니면 바닐라 POSIX? – wbennett
['std :: condition_variable'] (http://en.cppreference.com/w/cpp/thread/condition_variable)이 귀하의 사례에 도움이 될 수 있습니다. 동기화 메커니즘과 같은 세마포어를 만들 수도 있습니다 ([이 질문 (http://stackoverflow.com/questions/3513045/conditional-variable-vs-semaphore)도 참조하십시오). –
@wbennett, 나는 아직 아무것도 사용하지 않고있다. 응용 프로그램은 모두 현재 단일 스레드에서 실행됩니다 (GUI 제외). – user3846684