generate_port
, try_bind_listen
, try_connect
, try_accept
, register_server
generate_port()
のみ整数または文字列. その他は整数.
generate_port()
は通信のための port を生成する. 無引数あるいは
引数が 0 の場合, Internet domain の socket のための port 番号, それ
以外の場合には, UNIX domain (host-internal protocol) のための, ファイル名
を生成する. port 番号は random に生成されるが, その port が使用中でない
保証はない.
try_bind_listen()
は, 与えられた port に対し, その protocol に
対応した socket を生成し, bind, listen する. 成功した場合,
socket 識別子を返す. 失敗した場合, -1 が返る.
try_connect()
は, ホスト host の port port に対し
connect を試みる. 成功した場合, socket 識別子を返す. 失敗した場合 -1 が返る.
try_accept()
は, socket に対する connect 要求を accept
し, 新たに生成された socket を返す. 失敗した場合 -1 が返る.
いずれの場合にも, socket は自動的に close される.
引数 port は, socket の protocol を判別するために与える.
register_server()
は, control, server それぞれの socket を
一組にして, server list に登録し, ox_push_cmo()
などで用いる
プロセス識別子を返す.
shell()
または手動で行う.
[340] CPort=generate_port(); 39896 [341] SPort=generate_port(); 37222 [342] CSocket=try_bind_listen(CPort); 3 [343] SSocket=try_bind_listen(SPort); 5 /* ここで, ox_launch を起動 : % ox_launch "127.1" 0 39716 37043 ox_asir "shio:0" */ [344] CSocket=try_accept(CSocket,CPort); 6 [345] SSocket=try_accept(SSocket,SPort); 3 [346] register_server(CSocket,CPort,SSocket,SPort); 0
ox_launch
, ox_launch_nox
, ox_shutdown
,
section ox_launch_generic
, section shell
, section ox_push_cmo
, ox_push_local
Go to the first, previous, next, last section, table of contents.