declare v number; begin -- Wait 3 seconds... dbms_lock.sleep(3); -- ... then write a message into a pipe dbms_pipe.pack_message('Hello from the blue session!'); v := dbms_pipe.send_message('tq84-send-receive-pipe'); dbms_output.put_line('Message sent [' || v || ']'); end; / exit
declare v number; m varchar2(4096); begin -- Waiting for the message sent in the green session: v := dbms_pipe.receive_message('tq84-send-receive-pipe'); dbms_pipe.unpack_message(m); dbms_output.put_line('Message received [' || v || ']'); dbms_output.put_line(' ' || m); end; / exit
@color 1f @sqlplus -S %connect_string% @blue
@color 2f @sqlplus -S %connect_string% @green
@set connect_string=rene/rene @start session_blue.bat @start session_green.bat