실행/차단 작업중인 여러 작업자에게 TBB 작업의 작업 (void*
)을 전달하기 위해 빠른 스레드 간 통신 메커니즘이 필요합니다. 현재 pipe()
+ libevent
을 (를) 사용하고 있습니다. 인텔 스레딩 구성 요소와 함께 사용할 수있는 더 빠르고 효율적인 대안이 있습니까?빠른 스레드 간 통신 메커니즘
6
A
답변
6
스레드가 동일한 메모리 공간을 공유하므로 뮤텍스 잠금이있는 표준 메모리 만 사용할 수 있어야합니다. pipe() + libevent 솔루션은 각 프로세스가 다른 메모리 공간을 갖는 프로세스 간 통신에 더 적합합니다.
+1
답장을 보내 주셔서 감사합니다. Concurrent_bounded_queue를 사용하겠습니다 :) – Stan
2
체크 아웃 Implementing a Thread-Safe Queue using Condition Variables 스레드 간 통신을 용이하게하기 위해 STL 큐, 뮤텍스 및 조건 변수를 사용합니다. (이것이 인텔 스레딩 구성 요소에 적용 가능한지는 모르겠지만 TBB가 질문/제목에 언급되지 않았기 때문에 다른 사람들이 내가했던 것처럼 끝낼 것이라고 가정합니다. 즉, 스레드 간 통신 메커니즘을 찾고 있습니다. IPC가 아니라이 기사가 도움이 될 것입니다.)
1
Boost lock free 및 thread safe queue를 살펴보십시오. 아주 사용하기 쉽고 정말 잘 작동합니다. 필자는 대기열을 폴링하여 별도의 코어에서 실행되는 스레드와 함께 사용했습니다.
관련 문제
- 1. PySide의 스레드 간 통신
- 2. 스레드 간 통신 (및 라이브러리)
- 3. ZeroMQ 메시지를 사용하여 스레드 간 통신
- 4. TCL : Windows에서 스레드 간 양방향 통신
- 5. iPhone 스레드 간 가장 간단한 통신
- 6. 안드로이드 - 간 스레드 통신 및 네트워크 소켓
- 7. Java Inter Process 통신 및 스레드 간 통신?
- 8. 스레드 간 '통신'문제
- 9. 간단한 프로세스 간 통신
- 10. 자바 프로세스 간 통신
- 11. 파이썬 프로세스 간 통신
- 12. Webpart의 컨트롤 간 통신
- 13. PostgreSQL의 데이터베이스 간 통신
- 14. 프로세스 간 통신
- 15. 프로세스 간 통신
- 16. .net과의 프로세스 간 통신
- 17. jQuery : 플러그인 간 통신
- 18. 개체 간 통신 방법
- 19. 파이썬 컴퓨터 간 통신
- 20. Prism4의 모듈 간 통신
- 21. 도메인 간 iframe 통신
- 22. 모듈 간 통신
- 23. SMTP : 서버 간 통신
- 24. 애플릿 간 통신
- 25. 아이폰의 애플리케이션 간 통신
- 26. lifteray의 포틀릿 간 통신
- 27. 도메인 간 통신
- 28. Java 프로세스 간 통신
- 29. DotNetNuke 모듈 간 통신
- 30. ViewModels 간 통신 방법
전역 변수? – kennytm