1<h2>clock_sleep</h2> 2<hr> 3<p> 4<strong>System Trap</strong> - Sleep until a given time. 5<h3>SYNOPSIS</h3> 6<pre> 7<strong>kern_return_t clock_sleep</strong> 8 <strong>(mach_port_t</strong> <var>clock_name</var>, 9 <strong>sleep_type_t</strong> <var>sleep_type</var>, 10 <strong>tvalspec_t</strong> <var>sleep_time</var>, 11 <strong>clock_name</strong> <var>wake_time</var><strong>);</strong> 12</pre> 13<h3>PARAMETERS</h3> 14<dl> 15<p> 16<dt><var>clock_name</var> 17<dd> 18[in clock-name send right] The name (or control) port for the clock. 19<p> 20<dt><var>sleep_type</var> 21<dd> 22[in scalar] How to interpret the sleep_time value: 23 <dl> 24<p> 25<dt><strong>TIME_RELATIVE</strong> 26<dd> 27Interpret the sleep time as relative to the current time. 28<p> 29<dt><strong>TIME_ABSOLUTE</strong> 30<dd> 31Interpret the sleep time as an absolute time. 32 </dl> 33<p> 34<dt><var>sleep_time</var> 35<dd> 36[in structure] The time when the sleep is to terminate. 37<p> 38<dt><var>wake_time</var> 39<dd> 40[out structure] The actual (absolute) time at which the sleep terminated. 41</dl> 42 43<h3>DESCRIPTION</h3> 44<p> 45The <strong>clock_sleep</strong> system trap delays the invoking 46thread until a specified time. This sleep may be aborted by 47<strong>thread_abort</strong>. Not all clocks provide this service 48but the REALTIME clock must. 49<p> 50If the specified time is in the past, the call returns immediately 51with the wake time being the current time. If the clock's time is 52changed (<strong>clock_set_time</strong>), the sleep will be 53interrupted. The thread will waken at the service time nearest the 54specified sleep time as governed by the current clock alarm 55resolution. 56<h3>RETURN VALUES</h3> 57<dl> 58<p> 59<dt> <strong>KERN_FAILURE</strong> 60<dd> 61The clock does not support a sleep service. 62<p> 63<dt> <strong>KERN_ABORTED</strong> 64<dd> 65The sleep was interrupted by thread_abort or terminated via use of 66clock_set_time. 67</dl> 68<h3>RELATED INFORMATION</h3> 69<p> 70Functions: 71<a href="host_get_clock_service.html"><strong>host_get_clock_service</strong></a>, 72<a href="clock_get_attributes.html"><strong>clock_get_attributes</strong></a>, 73<a href="clock_get_time.html"><strong>clock_get_time</strong></a>, 74<a href="clock_alarm.html"><strong>clock_alarm</strong></a>, 75<a href="clock_set_time.html"><strong>clock_set_time</strong></a>, 76<a href="thread_abort.html"><strong>thread_abort</strong></a>, 77<p> 78Data Structures: 79tvalspec. 80