개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.20 23:47

parallelChannel::make와 std::thread 관련 혼동

목록
  • DP전문가 1일 전 2025.06.20 23:47
  • 6
    1
parallelChannel::make와 std::thread를 사용하여 병렬 처리를 구현하려고 하는데요.
parallelChannel::make를 사용하여 작업을 생성하고, std::thread를 사용하여 작업을 실행하는 것은 어떤 차이점이 있나요?
parallelChannel::make를 사용하여 작업을 생성하고, std::thread를 사용하여 작업을 실행하는 것과, std::thread를 사용하여 작업을 생성하고, parallelChannel::make를 사용하여 작업을 실행하는 것은 동일한가요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    parallelChannel::make와 std::thread는 모두 병렬 처리를 위한 도구입니다. 그러나 사용 방법과 목적이 다릅니다.

    parallelChannel::make는 작업을 생성하고 관리하는 역할을 합니다. 작업을 생성한 후, std::thread를 사용하여 작업을 실행할 수 있습니다. 이 경우, parallelChannel::make는 작업을 관리하고, std::thread는 작업을 실행합니다.

    반면에, std::thread를 사용하여 작업을 생성하고, parallelChannel::make를 사용하여 작업을 실행하는 경우, std::thread는 작업을 생성하고, parallelChannel::make는 작업을 실행합니다. 이 경우, std::thread는 작업을 관리하고, parallelChannel::make는 작업을 실행합니다.

    두 경우 모두, 작업을 생성하고 실행하는 것은 동일합니다. 그러나 작업을 관리하는 역할이 다릅니다. parallelChannel::make는 작업을 관리하고, std::thread는 작업을 실행합니다.

    따라서, 사용하는 도구에 따라 작업을 관리하고 실행하는 역할이 다릅니다.

    #hostingforum.kr
    cpp
    
    #include 
    
    #include 
    
    #include 
    
    
    
    // parallelChannel::make를 사용하여 작업을 생성하고, std::thread를 사용하여 작업을 실행하는 예제
    
    void work() {
    
        std::cout << "작업을 실행합니다." << std::endl;
    
    }
    
    
    
    int main() {
    
        // 작업을 생성
    
        auto task = std::async(std::launch::async, work);
    
    
    
        // 작업을 실행
    
        task.wait();
    
    
    
        return 0;
    
    }
    
    
    
    // std::thread를 사용하여 작업을 생성하고, parallelChannel::make를 사용하여 작업을 실행하는 예제
    
    void work() {
    
        std::cout << "작업을 실행합니다." << std::endl;
    
    }
    
    
    
    int main() {
    
        // 작업을 생성
    
        std::thread thread(work);
    
    
    
        // 작업을 실행
    
        thread.join();
    
    
    
        return 0;
    
    }
    
    


    위 예제에서, 두 경우 모두 작업을 생성하고 실행하는 것은 동일합니다. 그러나 작업을 관리하는 역할이 다릅니다. parallelChannel::make는 작업을 관리하고, std::thread는 작업을 실행합니다.

    2025-06-20 23:48

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 29,828건 / 12 페이지

검색

게시물 검색