sleep_seconds Subroutine

public subroutine sleep_seconds(s)

Sleep for approximately s seconds.

Dispatches to either: - sleep_os when low-CPU mode is enabled, or - sleep_spin when low-CPU mode is disabled.

Arguments

  • s: requested duration in seconds. Non-positive values return immediately.

Arguments

Type IntentOptional Attributes Name
real, intent(in) :: s

Calls

proc~~sleep_seconds~~CallsGraph proc~sleep_seconds sleep_seconds proc~sleep_os sleep_os proc~sleep_seconds->proc~sleep_os proc~sleep_spin sleep_spin proc~sleep_seconds->proc~sleep_spin get_os_type get_os_type proc~sleep_os->get_os_type interface~fpm_watch_sleep_seconds fpm_watch_sleep_seconds proc~sleep_os->interface~fpm_watch_sleep_seconds

Called by

proc~~sleep_seconds~~CalledByGraph proc~sleep_seconds sleep_seconds proc~supervisor_loop supervisor_loop proc~supervisor_loop->proc~sleep_seconds proc~watcher_run watcher_t%watcher_run proc~watcher_run->proc~sleep_seconds proc~maybe_supervise maybe_supervise proc~maybe_supervise->proc~supervisor_loop

Source Code

   subroutine sleep_seconds(s)
      real, intent(in) :: s
      if (s <= 0.0) return
      if (low_cpu_mode) then
         call sleep_os(s)
      else
         call sleep_spin(s)
      end if
   end subroutine sleep_seconds