pthreads
으로 스레드를 생성한다고 가정하고 이후에 새로운 작업을 보내어 으로 초기화 할 수 있습니까? 그렇다면 새 스레드를 만드는 데 리소스를 낭비하지 않으시겠습니까? 예를 들어, 나는 3 개의 쓰레드를 만들고, 2 개의 쓰레드 시그널을 완성하고, 그것을 죽이고 새로운 것을 시작하지 않고 또 다른 "작업"을 보낸다. 감사.스레드를 활성 상태로 유지하고 다른 작업 부하를 줄 수 있습니까?
2
A
답변
3
예, 아파치와 같은 서버가 성능을 향상시키기 위해 수행하는 작업입니다. 디자인 패턴은 Thread pool pattern이고 pthread를 사용하는 다양한 구현 (예 : this one)이 있습니다.
물론 목표가 무엇인지에 따라 구현을 최대한 간단하게 유지하고자 할 수 있습니다.
0
물론. 예를 들어 생산자 - 소비자 패턴을 사용할 수 있습니다. 여기에 example in C#이 있지만 pthread에서도 쉽게 구현할 수 있습니다.
5
일반적으로 간단한 양식은 일반 (작업) queue입니다. 원칙적으로 뮤텍스에 의해 보호되는 대기열 구조 (연결된 목록)를 유지 관리합니다. 일반적으로 condition variables은 주/제작자 스레드가 새 작업을 사용할 수 있음을 작업자 스레드에 알리기 위해 사용되므로 폴링 할 필요가 없습니다.
유용 할 수있는 일부 이전 SO 질문
은 다음과 같습니다 : 귀하의 질문에 검색 키워드 "스레드 풀링"또는 "입니다
0
스레드 풀 ". 이 용어를 사용하면이 사이트와 Google에서도 충분한 정보를 얻을 수 있습니다.
관련 문제
- 1. 어떻게 연결 스레드를 활성 상태로 유지할 수 있습니까? (데몬을 사용해야합니까?)
- 2. 서브 프로세스를 활성 상태로 유지하고 명령을 계속 제공합니까? Python
- 3. 명령 줄 도구를 활성 상태로 유지
- 4. 다른 요청을하는 NSURLConnection을 사용하여 세션을 활성 상태로 유지할 수 있습니까?
- 5. Facebook 세션을 활성 상태로 유지할 수 있습니까?
- 6. 스레드를 생성하여 CPU에 부하를 가함
- 7. X11 응용 프로그램을 활성 상태로 유지하고 나중에 연결을 끊고 다시 연결할 수 있습니다.
- 8. 잠금 장치가있는 스레드를 잠자기 상태로 둘 수 있습니까?
- 9. 웹 응용 프로그램에서 리소스를 활성 상태로 유지
- 10. 현재 활성 상태로 표시됩니다. UIViewController
- 11. k 파티션 알고리즘 - 작업 부하를 균등하게 나누기
- 12. 활성 포럼 스레드를 나열하십시오
- 13. ThreadPoolExecutor를 사용하는 활성 작업 수
- 14. 활성 상태로 마우스 오버하지 않기
- 15. 다른 앱 도메인에서 스레드를 만들 수 있습니까?
- 16. 핵심 스레드를 유지하고 ThreadPoolExecutor의 초과 스레드를 제거하는 방법은 무엇입니까? keepAliveTime이 예상대로 작동하지 않습니다.
- 17. ruby on rails가 활성 레코드에서 양방향 친구 관계를 유지하고 있습니까?
- 18. "활성"스레드를 정의하는 것은 무엇입니까?
- 19. 다른 클라이언트를 실행하려면 클라이언트 스레드를 잠자기 상태로 만들려면 어떻게합니까?
- 20. 스레드 자체를 잠자기 상태로 둘 수 있습니까?
- 21. Asp.net : 대리자 ("작업")를 제어 상태로 serialize 할 수 있습니까?
- 22. .Net 대용량 목록을 유지하고 거의 실시간으로 데이터를 최신 상태로 유지
- 23. 사진을 찍은 후에 카메라를 활성 상태로 유지하십시오.
- 24. 모든 스레드를 잠자기 상태로 만드는 방법 - iphone
- 25. div를 포커스/활성 상태로 유지하는 Psuedo-class?
- 26. 위젯을 유지하고 응답하기
- 27. Facebook 세션을 활성 상태로 유지 하시겠습니까?
- 28. 스레드를 사용하여 작업
- 29. 활성 파일과 다른 분기에서 파일을 열 수 있습니까?
- 30. JQuery와 부하를