2
현재 선형 순서로 작업을 수행하는 가닥이 있습니다. 나는 아니오를 얻는 방법이 있는지 알고 싶었다. 스트랜드 큐에있는 작업 수가닥 수를 얻을 수 있습니까?
현재 선형 순서로 작업을 수행하는 가닥이 있습니다. 나는 아니오를 얻는 방법이 있는지 알고 싶었다. 스트랜드 큐에있는 작업 수가닥 수를 얻을 수 있습니까?
쉬운 방법은 없습니다. strand
정보에 액세스하거나 수를 직접 포함하는 공개 수단을 제공하지 않습니다. private 멤버 변수에 액세스하면 count_
을 통해 strand::impl_
사이의 크기를 얻을 수 있습니다.
대체 방법은 다음과 같습니다
strand
포장. 이 새로운 유형은 사용자 핸들러가 실행을 완료하면 카운트를 감소시키기위한 후크를 주입해야하기 때문에 게시되는 모든 핸들러를 래핑해야합니다.
신뢰할 수있는 답변을 얻을 수있는 방법이 없기 때문에 의심 스럽지만 (확실하지 않으므로 답변이 아닙니다.) 다른 스레드가 대기열을 검사하고 정보를 처리하는 스레드간에 작업을 게시 할 수 있습니다. –
개인 회원 (회원이라고 생각합니다)은 회원으로 구성되어 있습니다. 하지만 액세스 할 수 없습니다. – Rajeshwar
어떤 버전의 Boost.Asio를 사용하고 있습니까? Boost 1.35에서 1.53까지, 나는 operation queue의 크기를 포함하는 멤버를 갖는'strand '를 기억할 수 없다. –