説明イベントが発生したときに応対するノード番号を返します。
構文$num = from()引数必要ありません。
返り値$num : ノード番号備考次のイベントが発生したときに対象のノード番号がセットされます。
イベント 対象 onConnect 新たに接続したノード onDisconnect 何らかの理由で接続が途絶えた、もしくは切断要求があったノード onRecv データを送信したノード serve サーバ処理を行うノード 呼び出されたハンドラから本関数を呼び出すことで、ノードに対して操作を行うことができます。
例えば、接続したノードに対してメッセージを送信する場合、onConnectハンドラから
sub onconnect { my $self = shift; my $from = $self->from(); # 接続したノード番号を取得 $self->send( $from, "Hello!\r\n" ); # 接続したノードにメッセージを送信 }また、切断するノードに対してメッセージを送信する場合、onDisconnectハンドラから
sub ondisconnect { my $self = shift; my $from = $self->from(); # 切断するノード番号を取得 $self->send( $from, "Bye!\r\n" ); # 切断するノードにメッセージを送信 }のように定義します。
'from_' で始まる関数は操作を行う際、操作対象のノード番号が自動的にセットされます。
例えば、上記、切断するノードに対してメッセージを送信する場合は
sub ondisconnect { my $self = shift; $self->from_send( "Bye!\r\n" ); # 切断するノードにメッセージを送信 }のように、一行で定義することができます。
イベントを発生したノードに対して操作や処理を行う場合は from 付き関数を使用する方がスマートですが、イベントを発生したノードから他のノードへ操作を行うような場合は、from なしの関数で操作するノード番号を指定して行います。