0

クックブックの例の 1 つを使用して、Rebol2 で次のようなサーバーを作成しようとしています。

listen: open tcp://:9999
waitports: [listen]
forever [
data: wait waitports
either same? data listen [
        active-port: first listen
        append waitports active-port
][
        incoming-from-remote: first data
        print incoming-from-remote
    ]     
]

クライアントを使用すると、メッセージを挿入して接続および送信できますが、クライアント側からポートを閉じると、サーバーで次のエラーが発生します。

** Script Error: Out of range or past end
** Where: forever
** Near: incoming-from-remote: first data
print incoming-from-remote

どうすればこれをうまく処理できますか?

4

1 に答える 1

0

これをいずれかのブロックに入れます

either any [ 
   not incoming-from-remote: copy data
   "" = incoming-from-remote
] [
   attempt [
      close data
      remove find waitports data
   ]
] [
  print ..
]
于 2014-01-13T10:07:18.400 に答える