Google

Go to the first, previous, next, last section, table of contents.


ox_reset,ox_intr,register_handler

ox_reset(number)
:: Resets an OpenXM server
ox_intr(number)
:: Sends SIGINT to an OpenXM server
register_handler(func)
:: Registers a function callable on a keyboard interrupt.
return
1
number
integer(process identifier)
func
functor or 0
  • ox_reset() resets a process whose identifier is number. After its execution the process is ready for receiving data.
  • After executing ox_reset(), sending/receiving buffers and stream buffers are assured to be empty.
  • Even if a process is running, the execution is safely stopped.
  • ox_reset() may be used prior to a distirbuted computation. It can be also used to interrupt a distributed computation.
  • ox_intr() sends SIGINT to a process whose identifier is number. The action of a server against SIGINT is not specified in OpenXM. `ox_asir' immediately enters the debug mode and pops up an window to input debug commands on X window system.
  • register_handler() registers a function func(). If u is specified on a keybord interrupt, func() is executed before returning the toplevel. If ox_reset() calls are included in func(), one can automatically reset OpenXM servers on a keyboard interrupt.
  • If func is equal to 0, the setting is reset.
[10] ox_launch();
0
[11] ox_rpc(0,"fctr",x^100-y^100);
0
[12] ox_reset(0); /* usr1 : return to toplevel by SIGUSR1 */
1                 /* is displayed on the xterm.           */
[340] Procs=[ox_launch(),ox_launch()];
[0,1]
[341] def reset() { extern Procs; map(ox_reset,Procs);}
[342] map(ox_rpc,Procs,"fctr",x^100-y^100);
[0,0]
[343] register_handler(reset);
1
[344] interrupt ?(q/t/c/d/u/w/?) u
Abort this computation? (y or n) y
Calling the registered exception handler...done.
return to toplevel
References
section ox_rpc, ox_cmo_rpc, ox_execute_string


Go to the first, previous, next, last section, table of contents.