Open/Close Menu Yapı Taahhüt ve İnş. Tic. Ltd. Şti.

Size Özel Tekliflerimiz?
İletişime Geçin! »

Bizi Arayın:
0216 537 19 46/47

새로운 프로그래밍 개념을 배우는 한 가지 좋은 방법은 다른 사람의 코드를 공부하는 것입니다. 잡지 기사에서 소스 코드를 찾을 수 있으며 CodeProject와 같은 사이트에서 인터넷에 게시할 수 있습니다. 나는 렉스 Jaeschke에 의해 C / C ++ 사용자 저널을 위해 작성 된 두 개의 기사에서 멀티 스레드 프로그램의 몇 가지 좋은 예를 우연히 만났다. 2005년 10월호에서 Jaeschke는 “C++/CLI 스레딩: 파트 1″이라는 제목의 기사를 썼고, 2005년 11월호에서는 “C++/CLI 스레딩: 파트 2″라는 제목의 후속 기사를 썼습니다. 불행 하 게도, C/C ++ 사용자 저널 잡지 접힌 이 기사 등장 직후. 그러나 원본 문서와 Jaeschke의 소스 코드는 다음 웹 사이트에서 계속 사용할 수 있습니다. 그러나 새로 만든 스레드가 너무 빨리 종료되면 _beginthread가 유효한 핸들을 반환하지 않을 수 있습니다. (비고 란의 토론 참조)) 오류에서 _beginthread는 -1L를 반환하고 스레드가 너무 많으면 Errno가 EAGAIN로 설정되고, 인수가 유효하지 않거나 스택 크기가 올바르지 않은 경우 EINVAL로 설정되거나 리소스가 부족한 경우 EACCES로 설정됩니다(예: 메모리). 오류에서 _beginthreadex는 0을 반환하고 errno 및 _doserrno가 설정됩니다. 참고: LIBCMT에 연결된 실행 파일의 경우. LIB는 Win32 ExitThread() API를 호출하지 않습니다. 이렇게 하면 런타임 시스템에서 할당된 리소스를 회수할 수 없습니다.

_endthread() 및 _endthreadex() 할당된 스레드 리소스를 회수한 다음 ExitThread()를 호출합니다. _endthread()는 스레드 핸들을 자동으로 닫습니다. 이 동작은 Win32 ExitThread() API와 다릅니다. 따라서 _beginthread() 및 _endthread()를 사용하는 경우 Win32 CloseHandle() API를 호출하여 스레드 핸들을 명시적으로 닫지 마십시오. Win32 ExitThread() API와 마찬가지로 _endthreadex()는 스레드 핸들을 닫지 않습니다. 따라서 _beginthreadex() 및 _endthreadex(_endthreadex)를 사용하는 경우 Win32 CloseHandle() API를 호출하여 스레드 핸들을 닫아야 합니다. 다른 C++ 프로그래머가 이러한 다중 스레드 예제를 실험할 수 있도록 를 사용할 수 있도록 합니다. ZIP 파일은 5개의 Visual C++ .NET 2003 작업 영역을 Part 1 목록 1, 파트 1 목록 2, 파트 2 목록 1, 파트 2 목록 3 및 2부 나열 4 재슈케의 원래 문서(현재 C++로 변환)에서 나열합니다.