목록전체 글 (77)
For me

Listener 1. _listenSocket.AcceptAsync(args); 이함수를 실행하면 비동기적으로 계속해서 연결요청이 있는지 확인 2. 연결 요청이 왔을시 내부에서 누군가가(닷넷)args.Completed.Invoke(sender, args) 실행 3. 등록했던 이벤트 OnAcceptCompleted 가실행됨 바로 접속하면 직접 OnAcceptCompleted 를 실행 (pending이 false일 경우) => Callback 함수를 실행할 수 없기 때문에 나중에 접속하면 args.Completed.Invoke()를 통해 실행 => 클라이언트의 입장을 기다리다가 입장 신청을 하게되면 OnAcceptComplete를 콜백으로 실행 MSDN 참고자료 Socket.AcceptAsync 메서드 (S..

소켓 준비 서버 주소로 Connet 소켓을 통해 Session 소켓과 패킷 송수신 가능 Listener 소켓 준비 Bind ( 서버 주소, Port 소켓 연동) Listen Accept => 클라 세션을 통해 사용자와 연결 가능 Server using System; using System.Net; using System.Net.Sockets; using System.Text; namespace ServerCore { class Program { static void Main(string[] args) { //DNS (Domain Name System) string host = Dns.GetHostName(); IPHostEntry ipHost = Dns.GetHostEntry(host); IPAddres..
using System; using System.Threading.Channels; using System.Threading.Tasks; namespace ServerCore { class Program { private static ThreadLocal ThreadName = new ThreadLocal(() => { return $"My Name is {Thread.CurrentThread.ManagedThreadId}"; }); static void Thread1() { bool repeat = ThreadName.IsValueCreated; if (repeat) { Console.WriteLine(ThreadName.Value + "(repeat)"); } else { Console.WriteLi..