receive@

働き

メッセージを受信します。

文法

receive@(<s>)
  • s - 情報を受け取る側の接続ID

説明

指定した接続IDに向けて送信されたメッセージを受信します。この関数の結果は下記のようなフォーマットを持つ配列になります。

[ 送信元の接続ID, 送信された情報の配列 ]

例えば、送信元の接続IDが「abc123」で、送信された情報が「[["name", "Takashi"], ["age", [50]]」でしたら、receive@ 関数の結果は下記のようになります。

[ "abc123", [ ["name", "Takashi"], ["age", 50] ] ]

サンプルプログラム

rem receive@

port=8080
server_conn_id$=bind$(port)

if len(server_conn_id$)=0 then
  print "サーバーの起動に失敗しました"
  end
end if

print server_conn_id$ + " にて接続受付中です"
do
  packet@=receive@(server_conn_id$)
  if len(packet@)<>0 then
    client_conn_id$=packet@[0]
    print client_conn_id$ + "からメッセージが届きました"
    print packet@[1]
  end if
loop