亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pthread.h

?? Pthread本來是一套用戶級線程庫, 但在Linux上實現時, 卻使用了內核級線程 來完成, 這樣的好處是, 可以充分的提高程序的并發性, 線程也可以象以前一樣調用 read這樣的函數, 而不必擔心
?? H
?? 第 1 頁 / 共 3 頁
字號:
/* This is an implementation of the threads API of POSIX 1003.1-2001.
 *
 * --------------------------------------------------------------------------
 *
 *      Pthreads-win32 - POSIX Threads Library for Win32
 *      Copyright(C) 1998 John E. Bossom
 *      Copyright(C) 1999,2005 Pthreads-win32 contributors
 * 
 *      Contact Email: rpj@callisto.canberra.edu.au
 * 
 *      The current list of contributors is contained
 *      in the file CONTRIBUTORS included with the source
 *      code distribution. The list can also be seen at the
 *      following World Wide Web location:
 *      http://sources.redhat.com/pthreads-win32/contributors.html
 * 
 *      This library is free software; you can redistribute it and/or
 *      modify it under the terms of the GNU Lesser General Public
 *      License as published by the Free Software Foundation; either
 *      version 2 of the License, or (at your option) any later version.
 * 
 *      This library is distributed in the hope that it will be useful,
 *      but WITHOUT ANY WARRANTY; without even the implied warranty of
 *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *      Lesser General Public License for more details.
 * 
 *      You should have received a copy of the GNU Lesser General Public
 *      License along with this library in the file COPYING.LIB;
 *      if not, write to the Free Software Foundation, Inc.,
 *      59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
 */

#if !defined( PTHREAD_H )
#define PTHREAD_H

/*
 * See the README file for an explanation of the pthreads-win32 version
 * numbering scheme and how the DLL is named etc.
 */
#define PTW32_VERSION 2,7,0,0
#define PTW32_VERSION_STRING "2, 7, 0, 0\0"

/* There are three implementations of cancel cleanup.
 * Note that pthread.h is included in both application
 * compilation units and also internally for the library.
 * The code here and within the library aims to work
 * for all reasonable combinations of environments.
 *
 * The three implementations are:
 *
 *   WIN32 SEH
 *   C
 *   C++
 *
 * Please note that exiting a push/pop block via
 * "return", "exit", "break", or "continue" will
 * lead to different behaviour amongst applications
 * depending upon whether the library was built
 * using SEH, C++, or C. For example, a library built
 * with SEH will call the cleanup routine, while both
 * C++ and C built versions will not.
 */

/*
 * Define defaults for cleanup code.
 * Note: Unless the build explicitly defines one of the following, then
 * we default to standard C style cleanup. This style uses setjmp/longjmp
 * in the cancelation and thread exit implementations and therefore won't
 * do stack unwinding if linked to applications that have it (e.g.
 * C++ apps). This is currently consistent with most/all commercial Unix
 * POSIX threads implementations.
 */
#if !defined( __CLEANUP_SEH ) && !defined( __CLEANUP_CXX ) && !defined( __CLEANUP_C )
# define __CLEANUP_C
#endif

#if defined( __CLEANUP_SEH ) && ( !defined( _MSC_VER ) && !defined(PTW32_RC_MSC))
#error ERROR [__FILE__, line __LINE__]: SEH is not supported for this compiler.
#endif

/*
 * Stop here if we are being included by the resource compiler.
 */
#ifndef RC_INVOKED

#undef PTW32_LEVEL

#if defined(_POSIX_SOURCE)
#define PTW32_LEVEL 0
/* Early POSIX */
#endif

#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199309
#undef PTW32_LEVEL
#define PTW32_LEVEL 1
/* Include 1b, 1c and 1d */
#endif

#if defined(INCLUDE_NP)
#undef PTW32_LEVEL
#define PTW32_LEVEL 2
/* Include Non-Portable extensions */
#endif

#define PTW32_LEVEL_MAX 3

#if !defined(PTW32_LEVEL)
#define PTW32_LEVEL PTW32_LEVEL_MAX
/* Include everything */
#endif

#ifdef _UWIN
#   define HAVE_STRUCT_TIMESPEC 1
#   define HAVE_SIGNAL_H        1
#   undef HAVE_CONFIG_H
#   pragma comment(lib, "pthread")
#endif

/*
 * -------------------------------------------------------------
 *
 *
 * Module: pthread.h
 *
 * Purpose:
 *      Provides an implementation of PThreads based upon the
 *      standard:
 *
 *              POSIX 1003.1-2001
 *  and
 *    The Single Unix Specification version 3
 *
 *    (these two are equivalent)
 *
 *      in order to enhance code portability between Windows,
 *  various commercial Unix implementations, and Linux.
 *
 *      See the ANNOUNCE file for a full list of conforming
 *      routines and defined constants, and a list of missing
 *      routines and constants not defined in this implementation.
 *
 * Authors:
 *      There have been many contributors to this library.
 *      The initial implementation was contributed by
 *      John Bossom, and several others have provided major
 *      sections or revisions of parts of the implementation.
 *      Often significant effort has been contributed to
 *      find and fix important bugs and other problems to
 *      improve the reliability of the library, which sometimes
 *      is not reflected in the amount of code which changed as
 *      result.
 *      As much as possible, the contributors are acknowledged
 *      in the ChangeLog file in the source code distribution
 *      where their changes are noted in detail.
 *
 *      Contributors are listed in the CONTRIBUTORS file.
 *
 *      As usual, all bouquets go to the contributors, and all
 *      brickbats go to the project maintainer.
 *
 * Maintainer:
 *      The code base for this project is coordinated and
 *      eventually pre-tested, packaged, and made available by
 *
 *              Ross Johnson <rpj@callisto.canberra.edu.au>
 *
 * QA Testers:
 *      Ultimately, the library is tested in the real world by
 *      a host of competent and demanding scientists and
 *      engineers who report bugs and/or provide solutions
 *      which are then fixed or incorporated into subsequent
 *      versions of the library. Each time a bug is fixed, a
 *      test case is written to prove the fix and ensure
 *      that later changes to the code don't reintroduce the
 *      same error. The number of test cases is slowly growing
 *      and therefore so is the code reliability.
 *
 * Compliance:
 *      See the file ANNOUNCE for the list of implemented
 *      and not-implemented routines and defined options.
 *      Of course, these are all defined is this file as well.
 *
 * Web site:
 *      The source code and other information about this library
 *      are available from
 *
 *              http://sources.redhat.com/pthreads-win32/
 *
 * -------------------------------------------------------------
 */

/* Try to avoid including windows.h */
#if defined(__MINGW32__) && defined(__cplusplus)
#define PTW32_INCLUDE_WINDOWS_H
#endif

#ifdef PTW32_INCLUDE_WINDOWS_H
#include <windows.h>
#endif

#if defined(_MSC_VER) && _MSC_VER < 1300 || defined(__DMC__)
/*
 * VC++6.0 or early compiler's header has no DWORD_PTR type.
 */
typedef unsigned long DWORD_PTR;
#endif
/*
 * -----------------
 * autoconf switches
 * -----------------
 */

#if HAVE_CONFIG_H
#include "config.h"
#endif /* HAVE_CONFIG_H */

#ifndef NEED_FTIME
#include <time.h>
#else /* NEED_FTIME */
/* use native WIN32 time API */
#endif /* NEED_FTIME */

#if HAVE_SIGNAL_H
#include <signal.h>
#endif /* HAVE_SIGNAL_H */

#include <setjmp.h>
#include <limits.h>

/*
 * Boolean values to make us independent of system includes.
 */
enum {
  PTW32_FALSE = 0,
  PTW32_TRUE = (! PTW32_FALSE)
};

/*
 * This is a duplicate of what is in the autoconf config.h,
 * which is only used when building the pthread-win32 libraries.
 */

#ifndef PTW32_CONFIG_H
#  if defined(WINCE)
#    define NEED_ERRNO
#    define NEED_SEM
#  endif
#  if defined(_UWIN) || defined(__MINGW32__)
#    define HAVE_MODE_T
#  endif
#endif

/*
 *
 */

#if PTW32_LEVEL >= PTW32_LEVEL_MAX
#ifdef NEED_ERRNO
#include "need_errno.h"
#else
#include <errno.h>
#endif
#endif /* PTW32_LEVEL >= PTW32_LEVEL_MAX */

/*
 * Several systems don't define some error numbers.
 */
#ifndef ENOTSUP
#  define ENOTSUP 48   /* This is the value in Solaris. */
#endif

#ifndef ETIMEDOUT
#  define ETIMEDOUT 10060     /* This is the value in winsock.h. */
#endif

#ifndef ENOSYS
#  define ENOSYS 140     /* Semi-arbitrary value */
#endif

#ifndef EDEADLK
#  ifdef EDEADLOCK
#    define EDEADLK EDEADLOCK
#  else
#    define EDEADLK 36     /* This is the value in MSVC. */
#  endif
#endif

#include <sched.h>

/*
 * To avoid including windows.h we define only those things that we
 * actually need from it.
 */
#ifndef PTW32_INCLUDE_WINDOWS_H
#ifndef HANDLE
# define PTW32__HANDLE_DEF
# define HANDLE void *
#endif
#ifndef DWORD
# define PTW32__DWORD_DEF
# define DWORD unsigned long
#endif
#endif

#ifndef HAVE_STRUCT_TIMESPEC
#define HAVE_STRUCT_TIMESPEC 1
struct timespec {
        long tv_sec;
        long tv_nsec;
};
#endif /* HAVE_STRUCT_TIMESPEC */

#ifndef SIG_BLOCK
#define SIG_BLOCK 0
#endif /* SIG_BLOCK */

#ifndef SIG_UNBLOCK 
#define SIG_UNBLOCK 1
#endif /* SIG_UNBLOCK */

#ifndef SIG_SETMASK
#define SIG_SETMASK 2
#endif /* SIG_SETMASK */

#ifdef __cplusplus
extern "C"
{
#endif                          /* __cplusplus */

/*
 * -------------------------------------------------------------
 *
 * POSIX 1003.1-2001 Options
 * =========================
 *
 * Options are normally set in <unistd.h>, which is not provided
 * with pthreads-win32.
 *
 * For conformance with the Single Unix Specification (version 3), all of the
 * options below are defined, and have a value of either -1 (not supported)
 * or 200112L (supported).
 *
 * These options can neither be left undefined nor have a value of 0, because
 * either indicates that sysconf(), which is not implemented, may be used at
 * runtime to check the status of the option.
 *
 * _POSIX_THREADS (== 200112L)
 *                      If == 200112L, you can use threads
 *
 * _POSIX_THREAD_ATTR_STACKSIZE (== 200112L)
 *                      If == 200112L, you can control the size of a thread's
 *                      stack
 *                              pthread_attr_getstacksize
 *                              pthread_attr_setstacksize
 *
 * _POSIX_THREAD_ATTR_STACKADDR (== -1)
 *                      If == 200112L, you can allocate and control a thread's
 *                      stack. If not supported, the following functions
 *                      will return ENOSYS, indicating they are not
 *                      supported:
 *                              pthread_attr_getstackaddr
 *                              pthread_attr_setstackaddr
 *
 * _POSIX_THREAD_PRIORITY_SCHEDULING (== -1)
 *                      If == 200112L, you can use realtime scheduling.
 *                      This option indicates that the behaviour of some
 *                      implemented functions conforms to the additional TPS
 *                      requirements in the standard. E.g. rwlocks favour
 *                      writers over readers when threads have equal priority.
 *
 * _POSIX_THREAD_PRIO_INHERIT (== -1)
 *                      If == 200112L, you can create priority inheritance
 *                      mutexes.
 *                              pthread_mutexattr_getprotocol +
 *                              pthread_mutexattr_setprotocol +
 *
 * _POSIX_THREAD_PRIO_PROTECT (== -1)
 *                      If == 200112L, you can create priority ceiling mutexes
 *                      Indicates the availability of:
 *                              pthread_mutex_getprioceiling
 *                              pthread_mutex_setprioceiling
 *                              pthread_mutexattr_getprioceiling
 *                              pthread_mutexattr_getprotocol     +
 *                              pthread_mutexattr_setprioceiling
 *                              pthread_mutexattr_setprotocol     +
 *
 * _POSIX_THREAD_PROCESS_SHARED (== -1)
 *                      If set, you can create mutexes and condition
 *                      variables that can be shared with another
 *                      process.If set, indicates the availability
 *                      of:
 *                              pthread_mutexattr_getpshared
 *                              pthread_mutexattr_setpshared
 *                              pthread_condattr_getpshared
 *                              pthread_condattr_setpshared
 *
 * _POSIX_THREAD_SAFE_FUNCTIONS (== 200112L)
 *                      If == 200112L you can use the special *_r library
 *                      functions that provide thread-safe behaviour
 *
 * _POSIX_READER_WRITER_LOCKS (== 200112L)
 *                      If == 200112L, you can use read/write locks
 *
 * _POSIX_SPIN_LOCKS (== 200112L)
 *                      If == 200112L, you can use spin locks
 *
 * _POSIX_BARRIERS (== 200112L)
 *                      If == 200112L, you can use barriers
 *
 *      + These functions provide both 'inherit' and/or
 *        'protect' protocol, based upon these macro
 *        settings.
 *
 * -------------------------------------------------------------
 */

/*
 * POSIX Options
 */
#undef _POSIX_THREADS
#define _POSIX_THREADS 200112L

#undef _POSIX_READER_WRITER_LOCKS
#define _POSIX_READER_WRITER_LOCKS 200112L

#undef _POSIX_SPIN_LOCKS
#define _POSIX_SPIN_LOCKS 200112L

#undef _POSIX_BARRIERS
#define _POSIX_BARRIERS 200112L

#undef _POSIX_THREAD_SAFE_FUNCTIONS
#define _POSIX_THREAD_SAFE_FUNCTIONS 200112L

#undef _POSIX_THREAD_ATTR_STACKSIZE
#define _POSIX_THREAD_ATTR_STACKSIZE 200112L

/*
 * The following options are not supported
 */
#undef _POSIX_THREAD_ATTR_STACKADDR
#define _POSIX_THREAD_ATTR_STACKADDR -1

#undef _POSIX_THREAD_PRIO_INHERIT
#define _POSIX_THREAD_PRIO_INHERIT -1

#undef _POSIX_THREAD_PRIO_PROTECT
#define _POSIX_THREAD_PRIO_PROTECT -1

/* TPS is not fully supported.  */
#undef _POSIX_THREAD_PRIORITY_SCHEDULING
#define _POSIX_THREAD_PRIORITY_SCHEDULING -1

#undef _POSIX_THREAD_PROCESS_SHARED
#define _POSIX_THREAD_PROCESS_SHARED -1


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品污网站| 国产ts人妖一区二区| 欧美少妇性性性| 一区二区三区91| 欧美午夜精品久久久| 亚洲一区二区在线免费看| 欧美日韩中文国产| 蓝色福利精品导航| 日本一区二区电影| 91免费在线播放| 亚洲大片在线观看| 欧美一级高清片| 国产精品1区2区| 亚洲视频在线一区二区| 在线观看91av| 国产精品亚洲一区二区三区在线| 国产精品色一区二区三区| 色哟哟欧美精品| 青青国产91久久久久久| 久久久久九九视频| 色av一区二区| 老司机精品视频导航| 国产精品福利一区| 在线成人高清不卡| 国产宾馆实践打屁股91| 一区二区三区国产精华| 精品人在线二区三区| 91毛片在线观看| 秋霞成人午夜伦在线观看| 日本一区二区在线不卡| 在线成人av网站| 99精品偷自拍| 激情综合网最新| 亚洲精品国产精品乱码不99| 日韩免费观看2025年上映的电影| av在线免费不卡| 免费成人美女在线观看.| ●精品国产综合乱码久久久久| 在线综合视频播放| 91免费国产在线观看| 捆绑紧缚一区二区三区视频| 亚洲欧美日本在线| 精品国产三级电影在线观看| 在线精品视频免费观看| 国产精品99精品久久免费| 三级一区在线视频先锋| 中文字幕一区二区三区视频| 精品国产乱码久久久久久图片| 在线观看日韩精品| 国产91精品在线观看| 蜜桃av一区二区三区| 亚洲一本大道在线| 日韩一区日韩二区| 久久久久久久综合日本| 日韩免费观看高清完整版| 欧美日本国产视频| 在线一区二区视频| av电影天堂一区二区在线观看| 国产综合色在线视频区| 日韩1区2区3区| 亚洲永久免费av| 亚洲柠檬福利资源导航| 国产精品三级av在线播放| 精品国产三级电影在线观看| 日韩欧美123| 日韩精品一区在线| 91精品国产欧美一区二区成人| 欧美性色综合网| 欧洲亚洲国产日韩| 色婷婷av一区二区三区软件| caoporn国产精品| av中文字幕在线不卡| 成人免费视频app| 成人性生交大片免费看中文网站| 国内精品免费在线观看| 国产一区在线精品| 国产在线视频精品一区| 国产一区二区在线视频| 国产在线精品视频| 国产精品一区在线| 国产成人一区二区精品非洲| 国产成人精品三级| 不卡视频在线看| caoporn国产一区二区| 91视频免费观看| 色999日韩国产欧美一区二区| 99精品国产91久久久久久 | 欧美一区二区私人影院日本| 欧美精品色综合| 9191久久久久久久久久久| 4hu四虎永久在线影院成人| 日韩精品一区在线观看| 国产欧美视频在线观看| 中文字幕高清一区| 亚洲日本乱码在线观看| 亚洲高清免费视频| 蜜臀精品久久久久久蜜臀| 精品一区二区三区香蕉蜜桃 | 午夜精品123| 蜜桃av一区二区在线观看| 国产另类ts人妖一区二区| 不卡的av电影| 欧美亚洲动漫另类| 欧美va亚洲va国产综合| 日本一区二区电影| 亚洲国产成人av| 国产自产v一区二区三区c| 成人黄色小视频| 欧美在线free| 欧美精品一区二区三区蜜臀| 亚洲国产精品高清| 亚洲永久免费视频| 国产在线精品一区二区| 色狠狠色狠狠综合| 久久综合中文字幕| 亚洲另类在线视频| 久久91精品久久久久久秒播| 暴力调教一区二区三区| 欧美一区二区三区视频免费| 欧美激情在线观看视频免费| 午夜精品国产更新| 国产91高潮流白浆在线麻豆| 欧美色涩在线第一页| 久久久久久9999| 日韩国产欧美在线视频| aaa亚洲精品一二三区| 这里只有精品99re| 亚洲天天做日日做天天谢日日欢| 青青青伊人色综合久久| 91精品福利在线| 久久久久久亚洲综合| 丝袜亚洲另类丝袜在线| 成人激情视频网站| 日韩欧美中文字幕精品| 亚洲精品免费视频| 国产精品99久久久久久有的能看| 欧美高清一级片在线| 一区在线播放视频| 国产伦精一区二区三区| 欧美日韩精品欧美日韩精品一| 中文字幕欧美激情一区| 蜜桃视频在线一区| 欧美系列日韩一区| 自拍偷拍欧美激情| 国产精品正在播放| 精品美女在线播放| 美女视频第一区二区三区免费观看网站| 一本久久精品一区二区| 中文字幕第一区| 国产精品一线二线三线精华| 日韩视频国产视频| 全部av―极品视觉盛宴亚洲| 欧美日韩情趣电影| 亚洲自拍偷拍麻豆| 色婷婷综合久久| 中文字幕五月欧美| 成人国产精品免费观看| 中文字幕成人在线观看| 国产精品一区二区果冻传媒| 欧美一级理论片| 蜜桃视频一区二区| 日韩视频中午一区| 日本不卡的三区四区五区| 在线不卡欧美精品一区二区三区| 亚洲国产成人av网| 欧美日韩免费不卡视频一区二区三区| 亚洲六月丁香色婷婷综合久久 | 久久亚洲精精品中文字幕早川悠里| 日本欧美在线看| 日韩午夜精品电影| 精品夜夜嗨av一区二区三区| 精品国产一区二区三区久久久蜜月 | 久久综合狠狠综合久久综合88| 男人操女人的视频在线观看欧美| 欧美精品一二三四| 男女男精品网站| 精品精品国产高清a毛片牛牛| 国产精品综合av一区二区国产馆| 久久精品亚洲精品国产欧美kt∨| 国产成人自拍网| 亚洲精品乱码久久久久久久久 | 亚洲精品中文字幕乱码三区| 91电影在线观看| 视频一区二区中文字幕| 欧美一区二区三区小说| 国产在线观看免费一区| 国产精品久久久久桃色tv| 日本韩国一区二区三区视频| 亚洲成av人片在www色猫咪| 日韩欧美精品三级| 国产很黄免费观看久久| 日韩码欧中文字| 欧美日韩综合不卡| 久久精品国产99久久6| 日韩免费在线观看| 成人av资源下载| 亚洲自拍偷拍欧美| 久久这里只有精品6| 风间由美一区二区av101 | 欧美白人最猛性xxxxx69交|