Platform/소켓
-
자바Platform/소켓 2013. 7. 5. 18:08
java.net.Socket.close().getInetAddress().getOutputStream().getInputStream() java.net.DatagramSocket java.net.ServerSocket.accept() java.net.URLimport java.net.*; import java.io.*;.. Socket s = new Socket(hostname, port);InputStream sin = s.getInputStream()BufferedReader fromServer = new BufferedReader(new InputStreamReader(sin));OutputStream sout = s.getOutputStream();PrintWriter toServer = new ..
-
ACE(Adaptive Communication Environment)Platform/소켓 2010. 7. 20. 17:04
다중 이벤트를 처리하기 위한 전통적인 방법 // 서버가 동시에 여러 네트워크 연결을 처리 새로운 프로세스 또는 쓰레드를 생성하여 각각의 이벤트를 처리하는 방식 디멀티플렉서(demultiplexer)에 기초한 Reactor 모델 // Event-driven select(), poll(), WaitForMultipleObjects() 개발자의 비지니스 로직 부분을 이벤트 핸들링과 분리 Reactor와 Event Handler Proactor pattern Demultiplexing이 socket event에 의해서 수행되는 점은 reactor pattern과 동일하다. Demultiplexing과정을 통해 분리된 메시지가 저장되는 Message queue를 가지고 있다. Message queue를 감시하는 ..
-
WindowsPlatform/소켓 2010. 3. 30. 22:13
Winsock 2 introduced with the release of Windows NT® 4.0; it is also available on Windows 95 (as an add-on package), Windows 98, and Windows 2000. service provider interface (SPI) layered service provider (LSP) to extend an existing transport service provider NDIS 참조 사이트: http://jjjryu.tistory.com/entry/%EC%86%8C%EC%BC%93-MFC http://blog.lmep.net/46
-
select() - IO 멀티플렉싱(Win32)Platform/소켓 2009. 5. 11. 16:43
// // Allocated for each socket handle // typedef struct _SOCKET_OBJ { SOCKET s; // Socket handle int listening; // Socket is a listening socket (TCP) int closing; // Indicates whether the connection is closing SOCKADDR_STORAGE addr; // Used for client's remote address int addrlen; // Length of the address BUFFER_OBJ *pending, // List of pending buffers to be sent *pendingtail; // Last entry in ..
-
Completion Port(Overlapped) - Win32Platform/소켓 2009. 4. 21. 22:04
CreateIoCompletionPort() PostQueuedCompletionStatus() GetQueuedCompletionStatus() WSAGetOverlappedResult() BindIoCompletionCallback() // Windows 2000 #define MAX_COMPLETION_THREAD_COUNT 32 // Maximum number of completion threads allowed // // Function: HandleIo // // Description: // This function handles the IO on a socket. In the event of a receive, the // completed receive is posted again. For..
-
Overlapped(Asynchronous) IO - Win32Platform/소켓 2009. 4. 21. 20:52
IO 완료를 이벤트나 완료 루틴으로 통보받을 수 있다. Alertable State // IO 루틴을 호출한 스레드?? SleepEx() WaitForSingleObjectEx() WaitForMultipleObjectsEx() MsgWaitForMultipleObjectsEx() SignalObjectAndWait() AcceptEx() GetAcceptExSockaddrs() WSASend() 오버랩드 IO를 수행하려면 여섯번 째(lpOverlapped), 일곱번 째(lpCompletionROUTINE) 인자를 사용한다. WSASendTo() WSARecv() WSARecvFrom() WSAGetOverlappedResult() // // This is our per I/O data. It descr..
-
WSAEventSelect() - IO 멀티플렉싱(Win32)Platform/소켓 2009. 4. 18. 22:13
WSACreateEvent() WSACloseEvent() WSAResetEvent() WSAEventSelect() IO 호출에 블록되기 전에 소켓 이벤트를 이벤트로 비동기적으로 통보 받을 수 있다. 비동기 데이타 송수신이 제공되는 것은 아니다. FD_CLOSE FD_ACCEPT FD_READ FD_WRITE WaitForSingleObject() WaitForMultipleObjects() MsgWaitForMultipleObjects() SignalObjectAndWait() WSAWaitForMultipleEvents() #include #include #include #define BUFSIZE 100 void CompressSockets(SOCKET* hSockArray, int omitInd..