쓰레드가 만들어지는 시점이 언제인가요?
468
작성한 질문수 44
디버그 모드로 확인했을 때에는
bool pending = _listenSocket.AcceptAsync(args);
이 코드 이후에 쓰레드가 새로 생기는 것을 확인했는데 AcceptAsync가 쓰레드를 생성하고
생성한 쓰레드를 사용해서 I/O작업을 확인하다가 완료되면 e(args) 매개 변수에 대한 Completed 이벤트가 발생시키는 것 (공식 문서에서 따왔습니다)인가요??
쓰레드가 만들어지는 시점이 언제인지 왜 만들어졌는지가 궁금해서 질문남깁니다!
그리고 소멸되는 시점도 궁금합니다.. (서버 공부를 시작하는 단계여서 소멸이라는 단어가 맞는지,,,)
디버깅을 해보면 작업자 스레드가 사라지는게 아니라 client.close()에 있다가 움직이는 것 처럼 보이는데
close하면 거기서 스레드가 자고있다가, AcceptAsync에서 Event를 주면 그때 깨어나서 일한다고 생각하면 되는건가요??
항상 친절하게 답변해주셔서 미리 감사합니다!
답변 3
0
https://stackoverflow.com/questions/48590349/how-does-a-net-threadpool-thread-created
궁금한 점은 스스로 연구를 해보시는 습관이 좋습니다.
ThreadPool 관련된 내용은 고급 주제이지만 ,
지구 어딘가에는 나와 비슷한 질문을 남긴 사람이 있을거라는 믿음을 갖고
구글링을 해보시면 답을 얻을 수 있습니다.
0
C++이라면 메인 쓰레드를 제외하곤 직접 만들어서 사용해야 하고,
위의 C# 코드에선 자체적인 Thread Pooling을 통해 자동으로 관리되고 있으니
생성 / 소멸의 정확한 시점은 알 수 없습니다.
TLS 질문드립니다.
0
55
2
SpinLock과 컨텍스트스위칭에 대해 질문 남겨요.
0
57
2
Unity Span
0
82
2
XML, Dll 차이점
0
111
2
Session 질문입니다
0
84
1
Write Read 커서 키워드
0
79
1
더미 클라이언트 수에 따른 OnDisconnect 발생
0
75
2
네트워크 Send 전담 스레드 배치
0
100
2
UnhandledException 으로 서버 터지는 경우
0
88
2
컨텐츠 단, 엔진 단
0
108
1
질문 있습니다
0
78
2
C# 게임서버 3D MMORPG
0
153
2
유니티6 버전
0
100
2
receive하는 부분과 send하는 부분의 차이
0
135
2
커서의 위치의 중요성
0
105
2
C++ 전혀 모르는데 C# 서버
0
171
2
강의에 질문이 있습니다
0
89
2
멀티스레드 이해도 질문
0
98
1
500 vs 500
0
131
3
OnAcceptHandler 액션 함수
0
64
1
이 정도 서버의 객관적인 수준이 궁금합니다.
0
194
2
36. Serialization #3 에서 string (name) 코드 수정 질문
0
84
2
외부 컴퓨터와의 통신 방법이 궁금합니다
0
107
1
스핀락 질문.
0
111
2





