C standard library :: unistd

usleep - fritag eksekvering for et tidsinterval

int usleep (useconds_t useconds)

Denne funktion skal bevirke at den kalende process eller thread fritages fra eksekvering indtil enten antallet af mikrosekunder specificeret i parameteren useconds er udløbet eller et signal er leveret til den kalende thread med et formål at aktivere en funktion der fanger et signal eller et signal der skal terminere processen. Tiden fritagelsen gælder kan blive længere end specificeret pga. planlægningen af andre aktiviteter af systemet.

Hvis SIGNALRM er genereret for den kalende process under eksekveringen af sleep() og hvis SIGNALRM er ignoreret eller blokeret at levere, er det uvist om sleep() returnerer når SIGNALRM signalet er planlagt. Hvis signalet er blokeret er det ligeledes uvist om hvorvidt signalet forbliver i venteposition efter sleep() returnerer eller signalet er afvist.

Parameteren useconds skal være mindre end en million. Hvis værdien af useconds er 0 har kaldet ingen effekt.

Hvis et SIGNALRM signal er genereret for den kalende process under eksekvering af usleep(), undtagen som et resultat af kald før til alarm() og hvis signalet ikke er ignoreret eller blokeret for levering, er det uvist om signalet har anden effekt andet end at forårsage usleep() til at returnere.

Hvis en signal-fangende funktion afbryder usleep() og undersøger eller ændrer enten tiden et SIGNALRM er planlagt at skulle generere en handling associeret med SIGNALRM signalet, eller om det SIGNALRM signal er blokeret fra levereting, er resultatet uvist.

Hvis en signal-fangende funktion afbryder usleep() og kalder siglongjmp() eller longjmp() for at restaurere et miljø gemt forud for sleep() kaldet, vil handlingen associeret med SIGNALRM signalet og tiden som et SIGNALRM signal er planlagt at skulle genereres er uvist. Det er også uvist om SIGNALRM signalet er blokeret, med mindre processens signal maske er restaureret som en del af miljøet.

Forskelle i implementeringen kan give begrænsninger til opløsningen af tids værdier. For hver tids-internal der ikke møder den aktuelle implementerings opløsningen bliver tids-intervallet afrundet op til nærmeste supporterede værdi.

Samkørsel med usleep() og enhver af følgende er ikke specificeret:

nanosleep()
setitimer()
timer_create()
timer_delete()
timer_getoverrun()
timer_gettime()
timer_settime()
ualarm()
sleep()

Funktionen behøver ikke være reentrant. Funktioner der ikke kræves at være reentrant kræves heller ikke at være thread-safe.

Return værdi

Hvis usleep() returnerer fordi tiden er udløbet skal værdien returneret være 0. Ellers returnerer den -1 og sætter errno til indikation af årsagen.

Fejl

Funktionen kan fejle hvis:

[EINVAL]
Tids-intervallet angivet en million eller mere mikrosekunder.

 

Ressourcer C Library opslag The Single UNIX® Specification, Version 2 Copyright © 1997 The Open Group GNU C Library Engelsk, med masser af gode og dybe artikler. Danske søgeord Find selv de bedste danske søgeord til din hjemmeside.
Produkter Bookingsystem
System for reservation af tid for behandlinger, aftaler, lokaler, udstyr, personale. Tilpasset lektionstimer. Udskriver arbejdsplaner og ugeskema for opslag. Statistik. Danmarks bedste pris nu kun kr. 1.695,-
HelpdeskEffektiviser din support-organisation med et Helpdesksystem. Fjern tidrøvere der forhindrer fokus på problemløsning. Lektionsplan Formidling af generelle information og specifikke lektioner fra undervisere til studerende/elever. Medlemssystem Medlemssystem online med administration af medlemskartotek, kontingentbetalinger, flettefiler m.m.
Styr selv Styr selv indholdet på dine hjemmesider med Content Management System.
Citat Så meget af det, vi kalder management, består i at gøre det besværligt for mennesker at arbejde.

Peter Drucker



Professionelle løsninger til Internettet. Webdesign, e-handel, cms, søgeoptimering, webhotel, analyse, Intranet mm.