在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → pthread源代码

pthread源代码

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:1.29M
  • 下载次数:7
  • 浏览次数:903
  • 发布时间:2020-07-08
  • 实例类别:一般编程问题
  • 发 布 人:robot666
  • 文件格式:.zip
  • 所需积分:2
 

实例介绍

【实例简介】
posix linux环境下的pthread source 通过查看源代码可以对线程的认识更加深刻 你知道吗?线程的底层实现也是调用clone[创建进程] 故有线程是轻量级的进程
【实例截图】
【核心代码】
1351029nptl
└── nptl
├── ANNOUNCE
├── Banner
├── ChangeLog
├── DESIGN-barrier.txt
├── DESIGN-condvar.txt
├── DESIGN-rwlock.txt
├── DESIGN-sem.txt
├── DESIGN-systemtap-probes.txt
├── Makeconfig
├── Makefile
├── TODO
├── TODO-kernel
├── TODO-testing
├── Versions
├── alloca_cutoff.c
├── allocatestack.c
├── cancellation.c
├── cleanup.c
├── cleanup_compat.c
├── cleanup_defer.c
├── cleanup_defer_compat.c
├── cleanup_routine.c
├── cond-perf.c
├── configure
├── descr.h
├── eintr.c
├── elision-conf.h
├── errno-loc.c
├── events.c
├── forward.c
├── herrno.c
├── libc-cancellation.c
├── libc-cleanup.c
├── lowlevellock.h
├── nptl-init.c
├── old_pthread_atfork.c
├── old_pthread_cond_broadcast.c
├── old_pthread_cond_destroy.c
├── old_pthread_cond_init.c
├── old_pthread_cond_signal.c
├── old_pthread_cond_timedwait.c
├── old_pthread_cond_wait.c
├── perf.c
├── pt-allocrtsig.c
├── pt-cleanup.c
├── pt-crti.S
├── pt-raise.c
├── pt-system.c
├── pthread-errnos.sym
├── pthread.IAB
├── pthread.IAD
├── pthread.IMB
├── pthread.IMD
├── pthread.PFI
├── pthread.PO
├── pthread.PR
├── pthread.PRI
├── pthread.PS
├── pthread.WK3
├── pthreadP.h
├── pthread_atfork.c
├── pthread_attr_destroy.c
├── pthread_attr_getdetachstate.c
├── pthread_attr_getguardsize.c
├── pthread_attr_getinheritsched.c
├── pthread_attr_getschedparam.c
├── pthread_attr_getschedpolicy.c
├── pthread_attr_getscope.c
├── pthread_attr_getstack.c
├── pthread_attr_getstackaddr.c
├── pthread_attr_getstacksize.c
├── pthread_attr_init.c
├── pthread_attr_setdetachstate.c
├── pthread_attr_setguardsize.c
├── pthread_attr_setinheritsched.c
├── pthread_attr_setschedparam.c
├── pthread_attr_setschedpolicy.c
├── pthread_attr_setscope.c
├── pthread_attr_setstack.c
├── pthread_attr_setstackaddr.c
├── pthread_attr_setstacksize.c
├── pthread_barrier_destroy.c
├── pthread_barrier_init.c
├── pthread_barrier_wait.c
├── pthread_barrierattr_destroy.c
├── pthread_barrierattr_getpshared.c
├── pthread_barrierattr_init.c
├── pthread_barrierattr_setpshared.c
├── pthread_cancel.c
├── pthread_clock_gettime.c
├── pthread_clock_settime.c
├── pthread_cond_broadcast.c
├── pthread_cond_destroy.c
├── pthread_cond_init.c
├── pthread_cond_signal.c
├── pthread_cond_timedwait.c
├── pthread_cond_wait.c
├── pthread_condattr_destroy.c
├── pthread_condattr_getclock.c
├── pthread_condattr_getpshared.c
├── pthread_condattr_init.c
├── pthread_condattr_setclock.c
├── pthread_condattr_setpshared.c
├── pthread_create.c
├── pthread_detach.c
├── pthread_equal.c
├── pthread_exit.c
├── pthread_getattr_default_np.c
├── pthread_getattr_np.c
├── pthread_getconcurrency.c
├── pthread_getcpuclockid.c
├── pthread_getschedparam.c
├── pthread_getspecific.c
├── pthread_join.c
├── pthread_key_create.c
├── pthread_key_delete.c
├── pthread_kill_other_threads.c
├── pthread_mutex_consistent.c
├── pthread_mutex_destroy.c
├── pthread_mutex_getprioceiling.c
├── pthread_mutex_init.c
├── pthread_mutex_lock.c
├── pthread_mutex_setprioceiling.c
├── pthread_mutex_timedlock.c
├── pthread_mutex_trylock.c
├── pthread_mutex_unlock.c
├── pthread_mutexattr_destroy.c
├── pthread_mutexattr_getprioceiling.c
├── pthread_mutexattr_getprotocol.c
├── pthread_mutexattr_getpshared.c
├── pthread_mutexattr_getrobust.c
├── pthread_mutexattr_gettype.c
├── pthread_mutexattr_init.c
├── pthread_mutexattr_setprioceiling.c
├── pthread_mutexattr_setprotocol.c
├── pthread_mutexattr_setpshared.c
├── pthread_mutexattr_setrobust.c
├── pthread_mutexattr_settype.c
├── pthread_once.c
├── pthread_rwlock_destroy.c
├── pthread_rwlock_init.c
├── pthread_rwlock_rdlock.c
├── pthread_rwlock_timedrdlock.c
├── pthread_rwlock_timedwrlock.c
├── pthread_rwlock_tryrdlock.c
├── pthread_rwlock_trywrlock.c
├── pthread_rwlock_unlock.c
├── pthread_rwlock_wrlock.c
├── pthread_rwlockattr_destroy.c
├── pthread_rwlockattr_getkind_np.c
├── pthread_rwlockattr_getpshared.c
├── pthread_rwlockattr_init.c
├── pthread_rwlockattr_setkind_np.c
├── pthread_rwlockattr_setpshared.c
├── pthread_self.c
├── pthread_setattr_default_np.c
├── pthread_setcancelstate.c
├── pthread_setcanceltype.c
├── pthread_setconcurrency.c
├── pthread_setegid.c
├── pthread_seteuid.c
├── pthread_setgid.c
├── pthread_setregid.c
├── pthread_setresgid.c
├── pthread_setresuid.c
├── pthread_setreuid.c
├── pthread_setschedparam.c
├── pthread_setschedprio.c
├── pthread_setspecific.c
├── pthread_setuid.c
├── pthread_spin_destroy.c
├── pthread_spin_init.c
├── pthread_spin_lock.c
├── pthread_spin_trylock.c
├── pthread_spin_unlock.c
├── pthread_testcancel.c
├── pthread_timedjoin.c
├── pthread_tryjoin.c
├── res.c
├── sem_close.c
├── sem_destroy.c
├── sem_getvalue.c
├── sem_init.c
├── sem_open.c
├── sem_unlink.c
├── semaphore.h
├── semaphoreP.h
├── shlib-versions
├── sigaction.c
├── sockperf.c
├── sysdeps
│   ├── i386
│   │   ├── Makefile
│   │   ├── i486
│   │   │   └── pthread_spin_trylock.S
│   │   ├── i586
│   │   │   └── pthread_spin_trylock.S
│   │   ├── i686
│   │   │   ├── Makefile
│   │   │   ├── pthread_spin_trylock.S
│   │   │   └── tls.h
│   │   ├── pthread_spin_init.c
│   │   ├── pthread_spin_lock.S
│   │   ├── pthread_spin_unlock.S
│   │   ├── pthreaddef.h
│   │   ├── tcb-offsets.sym
│   │   └── tls.h
│   ├── powerpc
│   │   ├── Makefile
│   │   ├── pthread_spin_lock.c
│   │   ├── pthread_spin_trylock.c
│   │   ├── pthreaddef.h
│   │   ├── tcb-offsets.sym
│   │   └── tls.h
│   ├── pthread
│   │   ├── Makefile
│   │   ├── Subdirs
│   │   ├── aio_misc.h
│   │   ├── allocalim.h
│   │   ├── bits
│   │   │   ├── libc-lock.h
│   │   │   ├── libc-lockP.h
│   │   │   ├── sigthread.h
│   │   │   └── stdio-lock.h
│   │   ├── configure
│   │   ├── configure.ac
│   │   ├── createthread.c
│   │   ├── flockfile.c
│   │   ├── ftrylockfile.c
│   │   ├── funlockfile.c
│   │   ├── gai_misc.h
│   │   ├── librt-cancellation.c
│   │   ├── list.h
│   │   ├── malloc-machine.h
│   │   ├── posix-timer.h
│   │   ├── pt-longjmp.c
│   │   ├── pthread-functions.h
│   │   ├── pthread.h
│   │   ├── pthread_sigmask.c
│   │   ├── setxid.h
│   │   ├── sigfillset.c
│   │   ├── sigprocmask.c
│   │   ├── tcb-offsets.h
│   │   ├── timer_create.c
│   │   ├── timer_delete.c
│   │   ├── timer_getoverr.c
│   │   ├── timer_gettime.c
│   │   ├── timer_routines.c
│   │   ├── timer_settime.c
│   │   ├── tst-mqueue8x.c
│   │   ├── tst-timer.c
│   │   └── unwind-forcedunwind.c
│   ├── s390
│   │   ├── Makefile
│   │   ├── pthread_spin_init.c
│   │   ├── pthread_spin_lock.c
│   │   ├── pthread_spin_trylock.c
│   │   ├── pthread_spin_unlock.c
│   │   ├── pthreaddef.h
│   │   ├── tcb-offsets.sym
│   │   └── tls.h
│   ├── sh
│   │   ├── Makefile
│   │   ├── pthread_spin_init.c
│   │   ├── pthread_spin_lock.c
│   │   ├── pthread_spin_trylock.S
│   │   ├── pthread_spin_unlock.S
│   │   ├── pthreaddef.h
│   │   ├── tcb-offsets.sym
│   │   └── tls.h
│   ├── sparc
│   │   ├── Makefile
│   │   ├── sparc32
│   │   │   ├── pthread_spin_lock.S
│   │   │   ├── pthread_spin_trylock.S
│   │   │   ├── pthreaddef.h
│   │   │   └── sparcv9
│   │   │   ├── pthread_spin_init.c
│   │   │   ├── pthread_spin_lock.S
│   │   │   ├── pthread_spin_trylock.S
│   │   │   └── pthread_spin_unlock.S
│   │   ├── sparc64
│   │   │   ├── pthread_spin_init.c
│   │   │   ├── pthread_spin_lock.S
│   │   │   ├── pthread_spin_trylock.S
│   │   │   ├── pthread_spin_unlock.S
│   │   │   └── pthreaddef.h
│   │   ├── tcb-offsets.sym
│   │   └── tls.h
│   ├── unix
│   │   └── sysv
│   │   └── linux
│   │   ├── Implies
│   │   ├── Makefile
│   │   ├── Versions
│   │   ├── aio_misc.h
│   │   ├── allocrtsig.c
│   │   ├── bits
│   │   │   ├── local_lim.h
│   │   │   └── posix_opt.h
│   │   ├── createthread.c
│   │   ├── fork.c
│   │   ├── fork.h
│   │   ├── getpid.c
│   │   ├── i386
│   │   │   ├── Implies
│   │   │   ├── clone.S
│   │   │   ├── createthread.c
│   │   │   ├── dl-sysdep.h
│   │   │   ├── fork.c
│   │   │   ├── i486
│   │   │   │   ├── libc-lowlevellock.S
│   │   │   │   ├── lowlevellock.S
│   │   │   │   ├── lowlevelrobustlock.S
│   │   │   │   ├── pthread_barrier_wait.S
│   │   │   │   ├── pthread_cond_broadcast.S
│   │   │   │   ├── pthread_cond_signal.S
│   │   │   │   ├── pthread_cond_timedwait.S
│   │   │   │   ├── pthread_cond_wait.S
│   │   │   │   ├── pthread_rwlock_rdlock.S
│   │   │   │   ├── pthread_rwlock_timedrdlock.S
│   │   │   │   ├── pthread_rwlock_timedwrlock.S
│   │   │   │   ├── pthread_rwlock_unlock.S
│   │   │   │   ├── pthread_rwlock_wrlock.S
│   │   │   │   ├── sem_post.S
│   │   │   │   ├── sem_timedwait.S
│   │   │   │   ├── sem_trywait.S
│   │   │   │   └── sem_wait.S
│   │   │   ├── i586
│   │   │   │   ├── libc-lowlevellock.S
│   │   │   │   ├── lowlevellock.S
│   │   │   │   ├── lowlevelrobustlock.S
│   │   │   │   ├── pthread_barrier_wait.S
│   │   │   │   ├── pthread_cond_broadcast.S
│   │   │   │   ├── pthread_cond_signal.S
│   │   │   │   ├── pthread_cond_timedwait.S
│   │   │   │   ├── pthread_cond_wait.S
│   │   │   │   ├── pthread_rwlock_rdlock.S
│   │   │   │   ├── pthread_rwlock_timedrdlock.S
│   │   │   │   ├── pthread_rwlock_timedwrlock.S
│   │   │   │   ├── pthread_rwlock_unlock.S
│   │   │   │   ├── pthread_rwlock_wrlock.S
│   │   │   │   ├── sem_post.S
│   │   │   │   ├── sem_timedwait.S
│   │   │   │   ├── sem_trywait.S
│   │   │   │   └── sem_wait.S
│   │   │   ├── i686
│   │   │   │   ├── dl-sysdep.h
│   │   │   │   ├── libc-lowlevellock.S
│   │   │   │   ├── lowlevellock.S
│   │   │   │   ├── lowlevelrobustlock.S
│   │   │   │   ├── pthread_barrier_wait.S
│   │   │   │   ├── pthread_cond_broadcast.S
│   │   │   │   ├── pthread_cond_signal.S
│   │   │   │   ├── pthread_cond_timedwait.S
│   │   │   │   ├── pthread_cond_wait.S
│   │   │   │   ├── pthread_rwlock_rdlock.S
│   │   │   │   ├── pthread_rwlock_timedrdlock.S
│   │   │   │   ├── pthread_rwlock_timedwrlock.S
│   │   │   │   ├── pthread_rwlock_unlock.S
│   │   │   │   ├── pthread_rwlock_wrlock.S
│   │   │   │   ├── sem_post.S
│   │   │   │   ├── sem_timedwait.S
│   │   │   │   ├── sem_trywait.S
│   │   │   │   └── sem_wait.S
│   │   │   ├── i786
│   │   │   │   └── Implies
│   │   │   ├── lowlevellock.h
│   │   │   ├── not-cancel.h
│   │   │   ├── pt-vfork.S
│   │   │   ├── pthread_once.S
│   │   │   ├── pthread_spin_init.c
│   │   │   ├── pthread_spin_unlock.S
│   │   │   ├── smp.h
│   │   │   ├── sysdep-cancel.h
│   │   │   └── vfork.S
│   │   ├── internaltypes.h
│   │   ├── jmp-unwind.c
│   │   ├── kernel-posix-timers.h
│   │   ├── libc-lowlevellock.c
│   │   ├── libc_multiple_threads.c
│   │   ├── libc_pthread_init.c
│   │   ├── lowlevelbarrier.sym
│   │   ├── lowlevelcond.sym
│   │   ├── lowlevellock.c
│   │   ├── lowlevelrobustlock.c
│   │   ├── lowlevelrobustlock.sym
│   │   ├── lowlevelrwlock.sym
│   │   ├── mq_notify.c
│   │   ├── powerpc
│   │   │   ├── Makefile
│   │   │   ├── Versions
│   │   │   ├── bits
│   │   │   │   ├── local_lim.h
│   │   │   │   ├── pthreadtypes.h
│   │   │   │   └── semaphore.h
│   │   │   ├── createthread.c
│   │   │   ├── fork.c
│   │   │   ├── lowlevellock.h
│   │   │   ├── not-cancel.h
│   │   │   ├── powerpc32
│   │   │   │   ├── clone.S
│   │   │   │   ├── pt-vfork.S
│   │   │   │   ├── sysdep-cancel.h
│   │   │   │   └── vfork.S
│   │   │   ├── powerpc64
│   │   │   │   ├── Versions
│   │   │   │   ├── clone.S
│   │   │   │   ├── pt-vfork.S
│   │   │   │   ├── sysdep-cancel.h
│   │   │   │   ├── timer_create.c
│   │   │   │   ├── timer_delete.c
│   │   │   │   ├── timer_getoverr.c
│   │   │   │   ├── timer_gettime.c
│   │   │   │   ├── timer_settime.c
│   │   │   │   └── vfork.S
│   │   │   ├── pt-longjmp.c
│   │   │   ├── pthread_attr_setstack.c
│   │   │   ├── pthread_attr_setstacksize.c
│   │   │   ├── pthread_once.c
│   │   │   ├── pthread_spin_unlock.c
│   │   │   └── sem_post.c
│   │   ├── pt-fork.c
│   │   ├── pt-raise.c
│   │   ├── pthread-pi-defines.sym
│   │   ├── pthread_attr_getaffinity.c
│   │   ├── pthread_attr_setaffinity.c
│   │   ├── pthread_getaffinity.c
│   │   ├── pthread_getcpuclockid.c
│   │   ├── pthread_getname.c
│   │   ├── pthread_kill.c
│   │   ├── pthread_mutex_cond_lock.c
│   │   ├── pthread_setaffinity.c
│   │   ├── pthread_setname.c
│   │   ├── pthread_sigqueue.c
│   │   ├── pthread_yield.c
│   │   ├── raise.c
│   │   ├── register-atfork.c
│   │   ├── rtld-lowlevel.h
│   │   ├── s390
│   │   │   ├── bits
│   │   │   │   ├── pthreadtypes.h
│   │   │   │   └── semaphore.h
│   │   │   ├── fork.c
│   │   │   ├── jmp-unwind.c
│   │   │   ├── lowlevellock.h
│   │   │   ├── not-cancel.h
│   │   │   ├── pthread_once.c
│   │   │   ├── s390-32
│   │   │   │   ├── clone.S
│   │   │   │   ├── pt-vfork.S
│   │   │   │   ├── sysdep-cancel.h
│   │   │   │   └── vfork.S
│   │   │   └── s390-64
│   │   │   ├── Versions
│   │   │   ├── clone.S
│   │   │   ├── pt-vfork.S
│   │   │   ├── sysdep-cancel.h
│   │   │   ├── timer_create.c
│   │   │   ├── timer_delete.c
│   │   │   ├── timer_getoverr.c
│   │   │   ├── timer_gettime.c
│   │   │   ├── timer_settime.c
│   │   │   └── vfork.S
│   │   ├── sem_post.c
│   │   ├── sem_timedwait.c
│   │   ├── sem_trywait.c
│   │   ├── sem_wait.c
│   │   ├── sh
│   │   │   ├── bits
│   │   │   │   ├── pthreadtypes.h
│   │   │   │   └── semaphore.h
│   │   │   ├── clone.S
│   │   │   ├── createthread.c
│   │   │   ├── fork.c
│   │   │   ├── libc-lowlevellock.S
│   │   │   ├── lowlevel-atomic.h
│   │   │   ├── lowlevellock.S
│   │   │   ├── lowlevellock.h
│   │   │   ├── lowlevelrobustlock.S
│   │   │   ├── not-cancel.h
│   │   │   ├── pt-vfork.S
│   │   │   ├── pthread_barrier_wait.S
│   │   │   ├── pthread_cond_broadcast.S
│   │   │   ├── pthread_cond_signal.S
│   │   │   ├── pthread_cond_timedwait.S
│   │   │   ├── pthread_cond_wait.S
│   │   │   ├── pthread_once.S
│   │   │   ├── pthread_rwlock_rdlock.S
│   │   │   ├── pthread_rwlock_timedrdlock.S
│   │   │   ├── pthread_rwlock_timedwrlock.S
│   │   │   ├── pthread_rwlock_unlock.S
│   │   │   ├── pthread_rwlock_wrlock.S
│   │   │   ├── sem_post.S
│   │   │   ├── sem_timedwait.S
│   │   │   ├── sem_trywait.S
│   │   │   ├── sem_wait.S
│   │   │   ├── sh4
│   │   │   │   └── lowlevellock.h
│   │   │   ├── smp.h
│   │   │   ├── sysdep-cancel.h
│   │   │   └── vfork.S
│   │   ├── sigtimedwait.c
│   │   ├── sigwait.c
│   │   ├── sigwaitinfo.c
│   │   ├── sleep.c
│   │   ├── smp.h
│   │   ├── sparc
│   │   │   ├── Makefile
│   │   │   ├── Versions
│   │   │   ├── aio_cancel.c
│   │   │   ├── bits
│   │   │   │   ├── local_lim.h
│   │   │   │   ├── pthreadtypes.h
│   │   │   │   └── semaphore.h
│   │   │   ├── fork.c
│   │   │   ├── internaltypes.h
│   │   │   ├── lowlevellock.h
│   │   │   ├── not-cancel.h
│   │   │   ├── pthread_barrier_destroy.c
│   │   │   ├── pthread_barrier_init.c
│   │   │   ├── pthread_barrier_wait.c
│   │   │   ├── pthread_once.c
│   │   │   ├── sem_init.c
│   │   │   ├── sem_post.c
│   │   │   ├── sem_timedwait.c
│   │   │   ├── sem_wait.c
│   │   │   ├── sparc32
│   │   │   │   ├── clone.S
│   │   │   │   ├── lowlevellock.c
│   │   │   │   ├── pt-vfork.S
│   │   │   │   ├── pthread_barrier_wait.c
│   │   │   │   ├── sem_post.c
│   │   │   │   ├── sem_timedwait.c
│   │   │   │   ├── sem_trywait.c
│   │   │   │   ├── sem_wait.c
│   │   │   │   ├── sparcv9
│   │   │   │   │   ├── Makefile
│   │   │   │   │   ├── cpu_relax.S
│   │   │   │   │   ├── pthread_barrier_wait.c
│   │   │   │   │   ├── sem_post.c
│   │   │   │   │   ├── sem_timedwait.c
│   │   │   │   │   ├── sem_trywait.c
│   │   │   │   │   └── sem_wait.c
│   │   │   │   ├── sysdep-cancel.h
│   │   │   │   └── vfork.S
│   │   │   └── sparc64
│   │   │   ├── Makefile
│   │   │   ├── Versions
│   │   │   ├── clone.S
│   │   │   ├── cpu_relax.S
│   │   │   ├── pt-vfork.S
│   │   │   ├── sysdep-cancel.h
│   │   │   ├── timer_create.c
│   │   │   ├── timer_delete.c
│   │   │   ├── timer_getoverr.c
│   │   │   ├── timer_gettime.c
│   │   │   ├── timer_settime.c
│   │   │   └── vfork.S
│   │   ├── structsem.sym
│   │   ├── timer_create.c
│   │   ├── timer_delete.c
│   │   ├── timer_getoverr.c
│   │   ├── timer_gettime.c
│   │   ├── timer_routines.c
│   │   ├── timer_settime.c
│   │   ├── unregister-atfork.c
│   │   ├── unwindbuf.sym
│   │   ├── x86
│   │   │   ├── Makefile
│   │   │   ├── bits
│   │   │   │   ├── pthreadtypes.h
│   │   │   │   └── semaphore.h
│   │   │   ├── elision-conf.c
│   │   │   ├── elision-conf.h
│   │   │   ├── elision-lock.c
│   │   │   ├── elision-timed.c
│   │   │   ├── elision-trylock.c
│   │   │   ├── elision-unlock.c
│   │   │   ├── force-elision.h
│   │   │   ├── hle.h
│   │   │   ├── init-arch.c
│   │   │   ├── init-arch.h
│   │   │   ├── pthread_mutex_cond_lock.c
│   │   │   ├── pthread_mutex_lock.c
│   │   │   ├── pthread_mutex_timedlock.c
│   │   │   └── pthread_mutex_trylock.c
│   │   └── x86_64
│   │   ├── Implies
│   │   ├── Versions
│   │   ├── cancellation.S
│   │   ├── clone.S
│   │   ├── compat-timer.h
│   │   ├── fork.c
│   │   ├── libc-cancellation.S
│   │   ├── libc-lowlevellock.S
│   │   ├── librt-cancellation.S
│   │   ├── lowlevellock.S
│   │   ├── lowlevellock.h
│   │   ├── lowlevelrobustlock.S
│   │   ├── not-cancel.h
│   │   ├── pt-vfork.S
│   │   ├── pthread_barrier_wait.S
│   │   ├── pthread_cond_broadcast.S
│   │   ├── pthread_cond_signal.S
│   │   ├── pthread_cond_timedwait.S
│   │   ├── pthread_cond_wait.S
│   │   ├── pthread_once.S
│   │   ├── pthread_rwlock_rdlock.S
│   │   ├── pthread_rwlock_timedrdlock.S
│   │   ├── pthread_rwlock_timedwrlock.S
│   │   ├── pthread_rwlock_unlock.S
│   │   ├── pthread_rwlock_wrlock.S
│   │   ├── pthread_setaffinity.c
│   │   ├── pthread_spin_init.c
│   │   ├── pthread_spin_unlock.S
│   │   ├── sem_post.S
│   │   ├── sem_timedwait.S
│   │   ├── sem_trywait.S
│   │   ├── sem_wait.S
│   │   ├── sysdep-cancel.h
│   │   ├── timer_create.c
│   │   ├── timer_delete.c
│   │   ├── timer_getoverr.c
│   │   ├── timer_gettime.c
│   │   ├── timer_settime.c
│   │   └── vfork.S
│   └── x86_64
│   ├── 64
│   │   └── shlib-versions
│   ├── Makefile
│   ├── configure
│   ├── configure.ac
│   ├── pthread_spin_init.c
│   ├── pthread_spin_lock.S
│   ├── pthread_spin_trylock.S
│   ├── pthread_spin_unlock.S
│   ├── pthreaddef.h
│   ├── tcb-offsets.sym
│   ├── tls.h
│   └── x32
│   ├── shlib-versions
│   └── tls.h
├── tpp.c
├── tst-_res1.c
├── tst-_res1mod1.c
├── tst-_res1mod2.c
├── tst-abstime.c
├── tst-align.c
├── tst-align2.c
├── tst-align3.c
├── tst-atfork1.c
├── tst-atfork2.c
├── tst-atfork2mod.c
├── tst-attr1.c
├── tst-attr2.c
├── tst-attr3.c
├── tst-backtrace1.c
├── tst-barrier1.c
├── tst-barrier2.c
├── tst-barrier3.c
├── tst-barrier4.c
├── tst-basic1.c
├── tst-basic2.c
├── tst-basic3.c
├── tst-basic4.c
├── tst-basic5.c
├── tst-basic6.c
├── tst-basic7.c
├── tst-cancel-self-cancelstate.c
├── tst-cancel-self-canceltype.c
├── tst-cancel-self-cleanup.c
├── tst-cancel-self-testcancel.c
├── tst-cancel-self.c
├── tst-cancel-wrappers.sh
├── tst-cancel1.c
├── tst-cancel10.c
├── tst-cancel11.c
├── tst-cancel12.c
├── tst-cancel13.c
├── tst-cancel14.c
├── tst-cancel15.c
├── tst-cancel16.c
├── tst-cancel17.c
├── tst-cancel18.c
├── tst-cancel19.c
├── tst-cancel2.c
├── tst-cancel20.c
├── tst-cancel21-static.c
├── tst-cancel21.c
├── tst-cancel22.c
├── tst-cancel23.c
├── tst-cancel24-static.cc
├── tst-cancel24.cc
├── tst-cancel25.c
├── tst-cancel3.c
├── tst-cancel4.c
├── tst-cancel5.c
├── tst-cancel6.c
├── tst-cancel7.c
├── tst-cancel8.c
├── tst-cancel9.c
├── tst-cancelx1.c
├── tst-cancelx10.c
├── tst-cancelx11.c
├── tst-cancelx12.c
├── tst-cancelx13.c
├── tst-cancelx14.c
├── tst-cancelx15.c
├── tst-cancelx16.c
├── tst-cancelx17.c
├── tst-cancelx18.c
├── tst-cancelx2.c
├── tst-cancelx20.c
├── tst-cancelx21.c
├── tst-cancelx3.c
├── tst-cancelx4.c
├── tst-cancelx5.c
├── tst-cancelx6.c
├── tst-cancelx7.c
├── tst-cancelx8.c
├── tst-cancelx9.c
├── tst-cleanup0.c
├── tst-cleanup0.expect
├── tst-cleanup1.c
├── tst-cleanup2.c
├── tst-cleanup3.c
├── tst-cleanup4.c
├── tst-cleanup4aux.c
├── tst-cleanupx0.c
├── tst-cleanupx0.expect
├── tst-cleanupx1.c
├── tst-cleanupx2.c
├── tst-cleanupx3.c
├── tst-cleanupx4.c
├── tst-clock1.c
├── tst-clock2.c
├── tst-cond-except.c
├── tst-cond1.c
├── tst-cond10.c
├── tst-cond11.c
├── tst-cond12.c
├── tst-cond13.c
├── tst-cond14.c
├── tst-cond15.c
├── tst-cond16.c
├── tst-cond17.c
├── tst-cond18.c
├── tst-cond19.c
├── tst-cond2.c
├── tst-cond20.c
├── tst-cond21.c
├── tst-cond22.c
├── tst-cond23.c
├── tst-cond24.c
├── tst-cond25.c
├── tst-cond3.c
├── tst-cond4.c
├── tst-cond5.c
├── tst-cond6.c
├── tst-cond7.c
├── tst-cond8-static.c
├── tst-cond8.c
├── tst-cond9.c
├── tst-context1.c
├── tst-default-attr.c
├── tst-detach1.c
├── tst-dlsym1.c
├── tst-eintr1.c
├── tst-eintr2.c
├── tst-eintr3.c
├── tst-eintr4.c
├── tst-eintr5.c
├── tst-exec1.c
├── tst-exec2.c
├── tst-exec3.c
├── tst-exec4.c
├── tst-execstack-mod.c
├── tst-execstack.c
├── tst-exit1.c
├── tst-exit2.c
├── tst-exit3.c
├── tst-fini1.c
├── tst-fini1mod.c
├── tst-flock1.c
├── tst-flock2.c
├── tst-fork1.c
├── tst-fork2.c
├── tst-fork3.c
├── tst-fork4.c
├── tst-getpid1.c
├── tst-getpid2.c
├── tst-getpid3.c
├── tst-initializers1-c89.c
├── tst-initializers1-c99.c
├── tst-initializers1-gnu89.c
├── tst-initializers1-gnu99.c
├── tst-initializers1.c
├── tst-join1.c
├── tst-join2.c
├── tst-join3.c
├── tst-join4.c
├── tst-join5.c
├── tst-join6.c
├── tst-key1.c
├── tst-key2.c
├── tst-key3.c
├── tst-key4.c
├── tst-kill1.c
├── tst-kill2.c
├── tst-kill3.c
├── tst-kill4.c
├── tst-kill5.c
├── tst-kill6.c
├── tst-locale1.c
├── tst-locale2.c
├── tst-mutex1.c
├── tst-mutex2.c
├── tst-mutex3.c
├── tst-mutex4.c
├── tst-mutex5.c
├── tst-mutex5a.c
├── tst-mutex6.c
├── tst-mutex7.c
├── tst-mutex7a.c
├── tst-mutex8-static.c
├── tst-mutex8.c
├── tst-mutex9.c
├── tst-mutexpi1.c
├── tst-mutexpi2.c
├── tst-mutexpi3.c
├── tst-mutexpi4.c
├── tst-mutexpi5.c
├── tst-mutexpi5a.c
├── tst-mutexpi6.c
├── tst-mutexpi7.c
├── tst-mutexpi7a.c
├── tst-mutexpi8-static.c
├── tst-mutexpi8.c
├── tst-mutexpi9.c
├── tst-mutexpp1.c
├── tst-mutexpp10.c
├── tst-mutexpp6.c
├── tst-oddstacklimit.c
├── tst-once1.c
├── tst-once2.c
├── tst-once3.c
├── tst-once4.c
├── tst-oncex3.c
├── tst-oncex4.c
├── tst-popen1.c
├── tst-pthread-attr-affinity.c
├── tst-pthread-getattr.c
├── tst-raise1.c
├── tst-robust1.c
├── tst-robust2.c
├── tst-robust3.c
├── tst-robust4.c
├── tst-robust5.c
├── tst-robust6.c
├── tst-robust7.c
├── tst-robust8.c
├── tst-robust9.c
├── tst-robustpi1.c
├── tst-robustpi2.c
├── tst-robustpi3.c
├── tst-robustpi4.c
├── tst-robustpi5.c
├── tst-robustpi6.c
├── tst-robustpi7.c
├── tst-robustpi8.c
├── tst-robustpi9.c
├── tst-rwlock1.c
├── tst-rwlock10.c
├── tst-rwlock11.c
├── tst-rwlock12.c
├── tst-rwlock13.c
├── tst-rwlock14.c
├── tst-rwlock2.c
├── tst-rwlock2a.c
├── tst-rwlock3.c
├── tst-rwlock4.c
├── tst-rwlock5.c
├── tst-rwlock6.c
├── tst-rwlock7.c
├── tst-rwlock8.c
├── tst-rwlock9.c
├── tst-sched1.c
├── tst-sem1.c
├── tst-sem10.c
├── tst-sem11-static.c
├── tst-sem11.c
├── tst-sem12-static.c
├── tst-sem12.c
├── tst-sem13.c
├── tst-sem14.c
├── tst-sem2.c
├── tst-sem3.c
├── tst-sem4.c
├── tst-sem5.c
├── tst-sem6.c
├── tst-sem7.c
├── tst-sem8.c
├── tst-sem9.c
├── tst-setuid1-static.c
├── tst-setuid1.c
├── tst-signal1.c
├── tst-signal2.c
├── tst-signal3.c
├── tst-signal4.c
├── tst-signal5.c
├── tst-signal6.c
├── tst-signal7.c
├── tst-spin1.c
├── tst-spin2.c
├── tst-spin3.c
├── tst-stack1.c
├── tst-stack2.c
├── tst-stack3.c
├── tst-stackguard1-static.c
├── tst-stackguard1.c
├── tst-stdio1.c
├── tst-stdio2.c
├── tst-sysconf.c
├── tst-tls1.c
├── tst-tls2.c
├── tst-tls3.c
├── tst-tls3mod.c
├── tst-tls4.c
├── tst-tls4moda.c
├── tst-tls4modb.c
├── tst-tls5.c
├── tst-tls5.h
├── tst-tls5mod.c
├── tst-tls5moda.c
├── tst-tls5modb.c
├── tst-tls5modc.c
├── tst-tls5modd.c
├── tst-tls5mode.c
├── tst-tls5modf.c
├── tst-tls6.sh
├── tst-tpp.h
├── tst-tsd1.c
├── tst-tsd2.c
├── tst-tsd3.c
├── tst-tsd4.c
├── tst-tsd5.c
├── tst-tsd6.c
├── tst-typesizes.c
├── tst-umask1.c
├── tst-unload.c
├── tst-vfork1.c
├── tst-vfork1x.c
├── tst-vfork2.c
├── tst-vfork2x.c
├── unwind.c
├── vars.c
└── version.c

46 directories, 913 files

标签:

实例下载地址

pthread源代码

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警