DBMS_LOCK.SLEEP is depreciated in Oracle 18c and DBMS_SESSION.SLEEP is introduced, and is available with no additional grants needed.
SLEEP procedure suspends the session for the specified number of seconds.
CDB$ROOT@CDB18> SET SERVEROUTPUT ON ;
DBMS_OUTPUT.PUT_LINE('Start ' || to_char(SYSDATE, 'YYYY-MM-DD HH24:MI:SS'));
DBMS_OUTPUT.PUT_LINE('End ' || to_char(SYSDATE, 'YYYY-MM-DD HH24:MI:SS'));
Start 2018-05-02 16:38:29
End 2018-05-02 16:38:34
PL/SQL procedure successfully completed.
DBMS_LOCK procedure was not accessible by default and user must be granted execute permission on the dbms_lock package.
grant execute on sys.dbms_lock to user1;
DBMS_SESSION.SLEEP does not need any addiotnal grants.