2009-10-17 4 views

답변

3

예. 도서관 코드에서 ThreadPool을 사용하는 것이 적절하다고 생각합니다. 사용자가 ThreadPool을 외부에서 사용할 수 있다고해도 ThreadPool은 여전히 ​​조정할만큼 좋습니다.

한편, 라이브러리 개발자는 유연성을 제공해야합니다. 사용자는 ThreadPool, 특정 스레드 또는 타사 스레드 풀 구현을 사용하도록 선택할 수 있습니다.

1

예.

잘 설명되어 있고 라이브러리 사용자가 최소/최대 스레드와 같은 스레드 풀을 제어하고 스레드 풀을 전혀 사용하지 않을 수있는 옵션을 제공 할 수있는 방법을 제공하는 한.

또한 매우으로 설정하면 라이브러리의 노출 부분이 스레드 안전이고 어느 부분이 아닌지 분명히해야합니다.

0

ThreadPool은 여러 구성 요소에서 동시에 사용하도록 설계되었습니다. 따라서 특정 라이브러리에서 사용하면 특별한 문제는 없습니다.

문제는 라이브러리의 일반적으로 스레딩 동작입니다. 라이브러리의 스레딩 의미가 무엇인지 명확하게 문서화해야합니다. 이러한 스레드를 작성하고 사용하는 방법은 구현 세부 사항이어야합니다. ThreadPool 자체가 고유 한 특성 (COM 아파트 선호도, 스레드 취소 불가능 등)이 API 또는 소비자에게 문제가되지 않는 한 문제가 발생하지 않아야합니다.

관련 문제