GnuSmalltalkUsersGuide:AdditionalChapter6 6

From 흡혈양파의 번역工房
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Sockets.DatagramSocket

Sockets.DatagramSocket

네임스페이스 Sockets에 정의됨

슈퍼클래스: Sockets.AbstractSocket

범주: 소켓-스트림


해당 클래스는 네트워크에 걸쳐 데이터의 각 패킷을 전송하는 비연결형 데이터그램 소켓을 모델링한다. TCP/IP의 세계에서 이는 UDP를 의미한다. 데이터그램 패킷은 전달이 보장되지 않으며, 원격 호스트에서 데이터가 수신되는 순서에 관해서도 어떠한 보장도 할 수 없다.<BR<해당 클래스는 DatagramSocketImpl의 서브클래스인 기본 소켓 구현 객체를 사용한다. 이는 스트림 소켓에 비해 데이터그램 소켓에 덜 유용하지만 (FileDescriptor에서 소켓과 관련이 없는 메서드를 숨기는 경우는 제외), 간결함과 대칭을 위해 실행된다.


Sockets.DatagramSocket 클래스: 접근하기

defaultBufferSize

입력 데이터그램의 기본 최대 크기를 응답하라.

defaultBufferSize: size

입력 데이터그램의 기본 최대 크기를 설정하라.

defaultImplementationClassFor: aSocketAddressClass

기본 구현 클래스를 응답하라. 서브클래스에 따라 이는 주어진 어드레스 클래스의 기본 스트림 소켓 구현 클래스가 되거나 기본 데이터그램 소켓 구현 클래스가 되기도 한다.


Sockets.DatagramSocket 클래스: 초기화

initialize

크기가 128인 입력 데이터그램을 이용하도록 클래스를 초기화하라.


Sockets.DatagramSocket 클래스: 인스턴스 생성

local: ipAddressOrString port: remotePort

새 소켓을 생성하여 주어진 포트에서 주어진 호스트(변환되어야 할 String이나 IPAddress로서)로 바인딩하라.

new

명시된 로컬 주소와 포트 없이 새 데이터그램 소켓을 응답하라 (기본적으로 UDP 소켓).

port: localPort

새 소켓을 생성하여 주어진 포트에 있는 로컬 호스트로 바인딩하라.

remote: ipAddressOrString port: remotePort local: ipAddress port: localPort

새 소켓을 생성하여 주어진 호스트(변환되어야 할 String이나 SocketAddress로서 전달)로 바인딩하고 주어진 remotePort로 바인딩하라. 데이터그램의 기본 목적지는 remotePort 포트상의 (nil이 아닌 경우) ipAddressOrString이 될 것이다.


Sockets.DatagramSocket: 접근하기

address

로컬 주소를 응답하라.

bufferSize

데이터그램이 보관되는 버퍼의 크기를 응답하라.

bufferSize: size

데이터그램이 보관되는 버퍼의 크기를 설정하라.

next

소켓 상의 데이터그램을 읽고 응답하라.

nextPut: aDatagram

소켓 상의 주어진 데이터그램을 전송하라.

peek

소켓 상의 데이터그램을 살펴보고(peek) 응답하라.

peek: datagram

소켓 상의 데이터그램을 살펴보고 'datagram'에 저장한 후 데이터그램 자체를 응답하라.

port

로컬 포트를 응답하라.

receive: datagram

소켓으로부터 데이터그램을 읽어와 'datagram'에 보관한 후 데이터그램 자체를 응답하라.


Sockets.DatagramSocket: 직접 연산(direct operations)

nextFrom: ipAddress port: port

주어진 어드레스와 포트로부터 다음 데이터그램을 응답하라.


Notes