mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-27 21:40:34 +02:00
Reorganize source tree and document
This commit is contained in:
parent
5fbd21a7c3
commit
e6de2fd633
63 changed files with 225 additions and 235 deletions
18
src/spin.h
Normal file
18
src/spin.h
Normal file
|
@ -0,0 +1,18 @@
|
|||
#ifndef SPIN_H
|
||||
#define SPIN_H
|
||||
|
||||
#include <sched.h>
|
||||
#include <unistd.h>
|
||||
|
||||
static inline void yield_for_spin(size_t spin_count) {
|
||||
if (spin_count < 10)
|
||||
__builtin_ia32_pause();
|
||||
else if (spin_count < 20)
|
||||
sched_yield();
|
||||
else if (spin_count < 40)
|
||||
usleep(0);
|
||||
else
|
||||
usleep(1);
|
||||
}
|
||||
|
||||
#endif // SPIN_H
|
Loading…
Add table
Add a link
Reference in a new issue