allocWithZone:
NSMachPort
class.
NSMachPort
クラスのあるインスタンスを返します。
+ port
NSPort
object capable of both sending and receiving messages.
メッセージの送信と受信の両方の能力のある新しいNSPort
オブジェクトを作成して返します。
Availability 有効性
Technology
@interface NSPort : NSObject
Communication occurs between NSPort
objects, which typically reside in different threads or tasks. The distributed objects system uses NSPort
objects to send NSPort
objects back and forth. Implement interapplication communication using distributed objects whenever possible and use NSPort
objects only when necessary.
通信は、NSPort
オブジェクト間に発生します、それらは概して異なるスレッドまたはタスクに属します。分散オブジェクトシステムは、NSPort
オブジェクトを使ってNSPort
オブジェクトを後ろへそして前へ送ります。可能な時はいつでも分散オブジェクトを使ってアプリケーション間通信を実装してください、そして必要な時だけNSPort
オブジェクトを使ってください。
To receive incoming messages, add NSPort
objects to an instance of NSRun
as input sources. NSConnection
objects automatically add their receive port when initialized.
やって来るメッセージを受け取るには、NSPort
オブジェクトそれらをあるNSRun
のインスタンスに入力ソースとして加えてください。NSConnection
オブジェクトは、初期化される時に自動的にそれらの受信ポートを加えます。
When the NSPort
object receives a port message, it forwards the message to its delegate in a handle
or handle
message. The delegate should implement only one of these methods to process the incoming message in whatever form desired. handle
provides a message as a raw Mach message beginning with a msg
structure. handle
provides a message as an instance of NSPort
, which is an object-oriented wrapper for a Mach message. If a delegate has not been set, the NSPort
object handles the message itself.
NSPort
オブジェクトがポートメッセージを受け取る場合、それはメッセージをそれの委任先へとhandle
またはhandle
メッセージで転送します。委任先は、これらメソッドのうちの1つだけを実装して、何であれ望んだ形式でやって来るメッセージを処理すべきです。handle
は、あるメッセージを生のMachメッセージとしてmsg
構造体で開始して提供します。handle
は、あるメッセージをNSPort
のインスタンスとして提供します、それはMachメッセージに対するオブジェクト指向ラッパーです。委任先が設定されていないならば、NSPort
オブジェクトはメッセージそれ自身を取り扱います。
When you are finished using a port object, you must explicitly invalidate the port object prior to sending it a release
message. Similarly, if your application uses garbage collection, you must invalidate the port object before removing any strong references to it. If you do not invalidate the port, the resulting port object may linger and create a memory leak. To invalidate the port object, invoke its invalidate
method.
あなたがあるポートオブジェクトの使用を終了する場合、あなたは明示的にそのポートオブジェクトを無効にしなければなりません、それにrelease
メッセージを送るより前にです。同様に、あなたのアプリケーションがガベージコレクションを使うならば、あなたはポートオブジェクトを、それへの何らかの強い参照を除去する前に無効にしなければなりません。あなたがポートを無効にしないならば、結果のポートオブジェクトは居残ってそしてメモリリークを作成するかもしれません。ポートオブジェクトを無効にするには、それのinvalidate
メソッドを発動してください。
Foundation defines three concrete subclasses of NSPort
. NSMach
and NSMessage
allow local (on the same machine) communication only. NSSocket
allows for both local and remote communication, but may be more expensive than the others for the local case. When creating an NSPort
object, using allocWithZone: or port
, an NSMach
object is created instead.
Foundationは、NSPort
の3つの具象サブクラスを定義します。NSMach
とNSMessage
は、ローカルの(同じマシーン上の)通信のみを可能にします。NSSocket
は、ローカルおよびリモートの接続の両方を想定します、しかしローカルの場合に対する他のものより高くつくかもしれません。NSPort
オブジェクトを、allocWithZone:またはport
使って作成している場合、NSMach
オブジェクトが代わりに作成されます。
Important 重要
NSPort
conforms to the NSCoding
protocol, but only supports coding by an NSPort
. NSPort
and its subclasses do not support archiving.
NSPort
はNSCoding
プロトコルに準拠します、しかしNSPort
によるコード化をサポートするだけです。NSPort
とそれのサブクラスは、アーカイブ化をサポートしません。
allocWithZone:
NSMachPort
class.
NSMachPort
クラスのあるインスタンスを返します。
+ port
NSPort
object capable of both sending and receiving messages.
メッセージの送信と受信の両方の能力のある新しいNSPort
オブジェクトを作成して返します。
- invalidate
NSPortDidBecomeInvalidNotification
to the default notification center.
レシーバを無効であるとして印します、そしてNSPortDidBecomeInvalidNotification
を省略時の通知センターに投函します。
valid
- setDelegate:
- delegate
- addConnection:toRunLoop:forMode:
- removeConnection:fromRunLoop:forMode:
runLoop
in the given input mode, mode
.
レシーバを、その与えられた入力モード、mode
におけるrunLoop
によって監視されるポートの一覧から取り除きます。
- sendBeforeDate:components:from:reserved:
NSPort
.
このメソッドは、NSPort
のあつらえの型を持つサブクラスに対して提供されます。
- sendBeforeDate:msgid:components:from:reserved:
NSPort
.
このメソッドは、NSPort
のあつらえの型を持つサブクラスに対して提供されます。
reservedSpaceLength
- removeFromRunLoop:forMode:
- scheduleInRunLoop:forMode:
NSPortDidBecomeInvalidNotification
invalidate
method, which is invoked when the NSPort
is deallocated or when it notices that its communication channel has been damaged. The notification object is the NSPort
object that has become invalid. This notification does not contain a userInfo
dictionary.
invalidate
メソッドから投函されました、それが発動されるのはNSPort
がデアロケートされる時、またはそれがそれの通信経路が損傷を受けたことに気づく時です。通知オブジェクトは、無効になったNSPort
オブジェクトです。この通知は、userInfo
辞書を含みません。
NSSocketNativeHandle
NSSocketPort