Oracle SLEEP
Version 11.2.0.3

General Information
How Oracle has four separate ways to induce a sleep into PL/SQL. They are: The USER_LOCK package is not part of the default installation. Follow the link at page bottom to install before running the demo.
 
Arguments set linesize 121
col package_name format a20
col argument_name format a17
col data_type format a14
col pls_type format a14

SELECT package_name, argument_name, data_type, data_length,
data_precision, pls_type
FROM all_arguments
WHERE object_name = 'SLEEP'
ORDER BY 1;
Precision set serveroutput on

DECLARE
 stime TIMESTAMP(9);
 etime TIMESTAMP(9);
BEGIN
  stime := SYSTIMESTAMP;
  dbms_backup_restore.sleep(0.01);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);

  stime := SYSTIMESTAMP;
  dbms_drs.sleep(0.01);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);

  stime := SYSTIMESTAMP;
  dbms_lock.sleep(0.01);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);

  stime := SYSTIMESTAMP;
  user_lock.sleep(1);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);
END;
/

DECLARE
 stime TIMESTAMP(9);
 etime TIMESTAMP(9);
BEGIN
  stime := SYSTIMESTAMP;
  dbms_backup_restore.sleep(1);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);

  stime := SYSTIMESTAMP;
  dbms_drs.sleep(1);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);

  stime := SYSTIMESTAMP;
  dbms_lock.sleep(1);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);

  stime := SYSTIMESTAMP;
  user_lock.sleep(100);
  etime := SYSTIMESTAMP;
  dbms_output.put_line(etime-stime);
END;
/
   

Related Topics
DBMS_BACKUP_RESTORE
DBMS_DRS
DBMS_LOCK
USER_LOCK

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2013 Daniel A. Morgan All Rights Reserved