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

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

?? my_pthread.h

?? 這是有關網絡入侵檢測技術系統的源代碼。使用visual c++編程
?? H
?? 第 1 頁 / 共 2 頁
字號:
/* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB      This library is free software; you can redistribute it and/or   modify it under the terms of the GNU Library 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   Library General Public License for more details.      You should have received a copy of the GNU Library General Public   License along with this library; if not, write to the Free   Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,   MA 02111-1307, USA *//* Defines to make different thread packages compatible */#ifndef _my_pthread_h#define _my_pthread_h#include <errno.h>#ifndef ETIME#define ETIME ETIMEDOUT				// For FreeBSD#endif#if defined(__WIN__)typedef CRITICAL_SECTION pthread_mutex_t;typedef HANDLE		 pthread_t;typedef struct thread_attr {    DWORD dwStackSize ;    DWORD dwCreatingFlag ;    int priority ;} pthread_attr_t ;typedef struct { int dummy; } pthread_condattr_t;/* Implementation of posix conditions */typedef struct st_pthread_link {  DWORD thread_id;  struct st_pthread_link *next;} pthread_link;typedef struct {  uint32 waiting;  HANDLE semaphore;} pthread_cond_t;struct timespec {		/* For pthread_cond_timedwait() */    time_t tv_sec;    long tv_nsec;};typedef int pthread_mutexattr_t;#define win_pthread_self my_thread_var->pthread_self#define pthread_handler_decl(A,B) unsigned __cdecl A(void *B)typedef unsigned (__cdecl *pthread_handler)(void *);void win_pthread_init(void);int win_pthread_setspecific(void *A,void *B,uint length);int pthread_create(pthread_t *,pthread_attr_t *,pthread_handler,void *);int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr);int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex);int pthread_cond_timedwait(pthread_cond_t *cond, pthread_mutex_t *mutex,			   struct timespec *abstime);int pthread_cond_signal(pthread_cond_t *cond);int pthread_cond_broadcast(pthread_cond_t *cond);int pthread_cond_destroy(pthread_cond_t *cond);int pthread_attr_init(pthread_attr_t *connect_att);int pthread_attr_setstacksize(pthread_attr_t *connect_att,DWORD stack);int pthread_attr_setprio(pthread_attr_t *connect_att,int priority);int pthread_attr_destroy(pthread_attr_t *connect_att);struct tm *localtime_r(const time_t *timep,struct tm *tmp);void pthread_exit(unsigned A);	 /* was #define pthread_exit(A) ExitThread(A)*/#define ETIMEDOUT 145		    /* Win32 doesn't have this */#define getpid() GetCurrentThreadId()#define pthread_self() win_pthread_self#define HAVE_LOCALTIME_R#define _REENTRANT#define HAVE_PTHREAD_ATTR_SETSTACKSIZE#ifdef USE_TLS					/* For LIBMYSQL.DLL */#undef SAFE_MUTEX				/* This will cause conflicts */#define pthread_key(T,V)  DWORD V#define pthread_key_create(A,B) ((*A=TlsAlloc())==0xFFFFFFFF)#define pthread_getspecific(A) (TlsGetValue(A))#define my_pthread_getspecific(T,A) ((T) TlsGetValue(A))#define my_pthread_getspecific_ptr(T,V) ((T) TlsGetValue(A))#define my_pthread_setspecific_ptr(T,V) TlsSetValue(T,V)#define pthread_setspecific(A,B) TlsSetValue(A,B)#else#define pthread_key(T,V) __declspec(thread) T V#define pthread_key_create(A,B) pthread_dummy(0)#define pthread_getspecific(A) (&(A))#define my_pthread_getspecific(T,A) (&(A))#define my_pthread_getspecific_ptr(T,V) (V)#define my_pthread_setspecific_ptr(T,V) ((T)=(V),0)#define pthread_setspecific(A,B) win_pthread_setspecific(&(A),(B),sizeof(A))#endif /* USE_TLS */#define pthread_equal(A,B) ((A) == (B))#define pthread_mutex_init(A,B)  InitializeCriticalSection(A)#define pthread_mutex_lock(A)	 (EnterCriticalSection(A),0)#define pthread_mutex_unlock(A)  LeaveCriticalSection(A)#define pthread_mutex_destroy(A) DeleteCriticalSection(A)#define my_pthread_setprio(A,B)  SetThreadPriority(GetCurrentThread(), (B))/* Dummy defines for easier code */#define pthread_kill(A,B) pthread_dummy(0)#define pthread_attr_setdetachstate(A,B) pthread_dummy(0)#define my_pthread_attr_setprio(A,B) pthread_attr_setprio(A,B)#define pthread_attr_setscope(A,B)#define pthread_detach_this_thread()#define pthread_condattr_init(A)#define pthread_condattr_destroy(A)//Irena: compiler does not like this://#define my_pthread_getprio(pthread_t thread_id) pthread_dummy(0)#define my_pthread_getprio(thread_id) pthread_dummy(0)#elif defined(HAVE_UNIXWARE7_THREADS)#include <thread.h>#include <synch.h>#ifndef _REENTRANT#define _REENTRANT#endif#define HAVE_NONPOSIX_SIGWAIT#define pthread_t thread_t#define pthread_cond_t cond_t#define pthread_mutex_t mutex_t#define pthread_key_t thread_key_ttypedef int pthread_attr_t;			/* Needed by Unixware 7.0.0 */#define pthread_key_create(A,B) thr_keycreate((A),(B))#define pthread_handler_decl(A,B) void *A(void *B)#define pthread_key(T,V) pthread_key_t Vvoid *	my_pthread_getspecific_imp(pthread_key_t key);#define my_pthread_getspecific(A,B) ((A) my_pthread_getspecific_imp(B))#define my_pthread_getspecific_ptr(T,V) my_pthread_getspecific(T,V)#define pthread_setspecific(A,B) thr_setspecific(A,B)#define my_pthread_setspecific_ptr(T,V) pthread_setspecific(T,V)#define pthread_create(A,B,C,D) thr_create(NULL,65536L,(C),(D),THR_DETACHED,(A))#define pthread_cond_init(a,b) cond_init((a),USYNC_THREAD,NULL)#define pthread_cond_destroy(a) cond_destroy(a)#define pthread_cond_signal(a) cond_signal(a)#define pthread_cond_wait(a,b) cond_wait((a),(b))#define pthread_cond_timedwait(a,b,c) cond_timedwait((a),(b),(c))#define pthread_cond_broadcast(a) cond_broadcast(a)#define pthread_mutex_init(a,b) mutex_init((a),USYNC_THREAD,NULL)#define pthread_mutex_lock(a) mutex_lock(a)#define pthread_mutex_unlock(a) mutex_unlock(a)#define pthread_mutex_destroy(a) mutex_destroy(a)#define pthread_self() thr_self()#define pthread_exit(A) thr_exit(A)#define pthread_equal(A,B) (((A) == (B)) ? 1 : 0)#define pthread_kill(A,B) thr_kill((A),(B))#define HAVE_PTHREAD_KILL#define pthread_sigmask(A,B,C) thr_sigsetmask((A),(B),(C))extern int my_sigwait(const sigset_t *set,int *sig);#define pthread_detach_this_thread() pthread_dummy(0)#define pthread_attr_init(A) pthread_dummy(0)#define pthread_attr_destroy(A) pthread_dummy(0)#define pthread_attr_setscope(A,B) pthread_dummy(0)#define pthread_attr_setdetachstate(A,B) pthread_dummy(0)#define my_pthread_setprio(A,B) pthread_dummy (0)#define my_pthread_getprio(A) pthread_dummy (0)#define my_pthread_attr_setprio(A,B) pthread_dummy(0)#else /* Normal threads */#ifdef HAVE_rts_threads#define sigwait org_sigwait#include <signal.h>#undef sigwait#endif#undef _REENTRANT			/* Fix if _REENTRANT is in pthread.h */#include <pthread.h>#ifndef _REENTRANT#define _REENTRANT#endif#ifdef HAVE_THR_SETCONCURRENCY#include <thread.h>			/* Probably solaris */#endif#ifdef HAVE_SCHED_H#include <sched.h>#endif#ifdef HAVE_SYNCH_H#include <synch.h>#endif#if defined(__EMX__) && (!defined(EMX_PTHREAD_REV) || (EMX_PTHREAD_REV < 2))#error Requires at least rev 2 of EMX pthreads library.#endifextern int my_pthread_getprio(pthread_t thread_id);#define pthread_key(T,V) pthread_key_t V#define my_pthread_getspecific_ptr(T,V) my_pthread_getspecific(T,(V))#define my_pthread_setspecific_ptr(T,V) pthread_setspecific(T,(void*) (V))#define pthread_detach_this_thread()#define pthread_handler_decl(A,B) void *A(void *B)typedef void *(* pthread_handler)(void *);/* Test first for RTS or FSU threads */#if defined(PTHREAD_SCOPE_GLOBAL) && !defined(PTHREAD_SCOPE_SYSTEM)#define HAVE_rts_threadsextern int my_pthread_create_detached;#define pthread_sigmask(A,B,C) sigprocmask((A),(B),(C))#define PTHREAD_CREATE_DETACHED &my_pthread_create_detached#define PTHREAD_SCOPE_SYSTEM  PTHREAD_SCOPE_GLOBAL#define PTHREAD_SCOPE_PROCESS PTHREAD_SCOPE_LOCAL#define USE_ALARM_THREAD#elif defined(HAVE_mit_thread)#define USE_ALARM_THREAD#undef	HAVE_LOCALTIME_R#define HAVE_LOCALTIME_R#undef	HAVE_PTHREAD_ATTR_SETSCOPE#define HAVE_PTHREAD_ATTR_SETSCOPE#undef HAVE_GLIBC2_STYLE_GETHOSTBYNAME_R	/* If we are running linux */#undef HAVE_RWLOCK_T#undef HAVE_RWLOCK_INIT#undef HAVE_PTHREAD_RWLOCK_RDLOCK#undef HAVE_SNPRINTF#define sigset(A,B) pthread_signal((A),(void (*)(int)) (B))#define signal(A,B) pthread_signal((A),(void (*)(int)) (B))#define my_pthread_attr_setprio(A,B)#endif /* defined(PTHREAD_SCOPE_GLOBAL) && !defined(PTHREAD_SCOPE_SYSTEM) */#if defined(_BSDI_VERSION) && _BSDI_VERSION < 199910int sigwait(sigset_t *set, int *sig);#endif#if defined(HAVE_UNIXWARE7_POSIX)#undef HAVE_NONPOSIX_SIGWAIT#define HAVE_NONPOSIX_SIGWAIT	/* sigwait takes only 1 argument */#endif#ifndef HAVE_NONPOSIX_SIGWAIT#define my_sigwait(A,B) sigwait((A),(B))#elseint my_sigwait(const sigset_t *set,int *sig);#endif#ifdef HAVE_NONPOSIX_PTHREAD_MUTEX_INIT#ifndef SAFE_MUTEX#define pthread_mutex_init(a,b) my_pthread_mutex_init((a),(b))extern int my_pthread_mutex_init(pthread_mutex_t *mp,				 const pthread_mutexattr_t *attr);#endif /* SAFE_MUTEX */#define pthread_cond_init(a,b) my_pthread_cond_init((a),(b))extern int my_pthread_cond_init(pthread_cond_t *mp,				const pthread_condattr_t *attr);#endif /* HAVE_NONPOSIX_PTHREAD_MUTEX_INIT */#if defined(HAVE_SIGTHREADMASK) && !defined(HAVE_PTHREAD_SIGMASK)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美少妇bbb| 久久久久国产精品麻豆| 成人永久aaa| 国产盗摄女厕一区二区三区| 国产一区视频网站| 大美女一区二区三区| 不卡区在线中文字幕| jlzzjlzz亚洲日本少妇| 欧洲国内综合视频| 91精品国产综合久久久久| 日韩一区二区在线观看视频| 精品国产sm最大网站免费看| 久久午夜色播影院免费高清| 国产亚洲精品精华液| 综合网在线视频| 亚洲成av人片在线观看| 美国毛片一区二区三区| 国产99精品视频| 色哟哟国产精品免费观看| 欧美日韩综合不卡| 久久久美女毛片| 综合久久久久综合| 视频一区二区中文字幕| 激情五月婷婷综合网| 99视频精品免费视频| 欧美喷潮久久久xxxxx| 日韩精品专区在线影院观看| 中文子幕无线码一区tr| 亚洲成人黄色影院| 国模冰冰炮一区二区| 色婷婷一区二区| 欧美mv日韩mv| 亚洲一区二区三区小说| 精品一区精品二区高清| 欧美综合欧美视频| 国产午夜精品理论片a级大结局| 亚洲色图欧洲色图婷婷| 久久99精品视频| 在线观看av不卡| 国产欧美日韩在线| 麻豆专区一区二区三区四区五区| jizz一区二区| 久久久综合视频| 午夜精品久久久久影视| 91一区一区三区| 久久蜜桃香蕉精品一区二区三区| 性欧美疯狂xxxxbbbb| 波多野结衣在线一区| 欧美va在线播放| 亚洲电影激情视频网站| av在线不卡网| 久久亚洲精精品中文字幕早川悠里 | 欧美伊人精品成人久久综合97| 91精品国产91综合久久蜜臀| 一区二区日韩av| 国产一区二区剧情av在线| 在线不卡欧美精品一区二区三区| 亚洲欧美综合另类在线卡通| 国产一区二区影院| 精品少妇一区二区三区视频免付费| 日韩专区在线视频| 欧美日韩黄色一区二区| 亚洲精品ww久久久久久p站| 成人v精品蜜桃久久一区| 久久嫩草精品久久久久| 国产中文字幕精品| 精品日韩一区二区| 九九视频精品免费| 精品福利在线导航| 蜜臀久久99精品久久久久宅男| 欧美三级一区二区| 日韩av中文字幕一区二区| 制服视频三区第一页精品| 三级成人在线视频| 欧美一级生活片| 蓝色福利精品导航| 久久久噜噜噜久久人人看| 国产一区91精品张津瑜| 国产精品女同一区二区三区| 成人免费黄色在线| 亚洲欧美另类小说视频| 91福利区一区二区三区| 五月婷婷欧美视频| 日韩一级免费观看| 国内精品久久久久影院色 | 极品瑜伽女神91| 亚洲精品在线观看视频| 丰满亚洲少妇av| 亚洲自拍偷拍九九九| 欧美电影在线免费观看| 国产一区二区精品在线观看| 国产欧美视频一区二区三区| 92国产精品观看| 丝袜美腿成人在线| 久久综合丝袜日本网| www.欧美日韩国产在线| 午夜视频在线观看一区| 精品国产91洋老外米糕| 91视频在线看| 日韩和欧美一区二区三区| 亚洲精品一区二区三区蜜桃下载| 成人国产精品视频| 亚洲成人av在线电影| 久久综合色播五月| 91国产成人在线| 国产一区二区三区综合| 一区二区三区中文在线观看| 欧美成va人片在线观看| 91视频在线观看| 国产一本一道久久香蕉| 亚洲va欧美va天堂v国产综合| 欧美电影免费观看高清完整版在线| 成人毛片老司机大片| 日韩精品国产欧美| 国产精品久久久久久久久晋中 | 精品在线视频一区| 亚洲精品视频免费看| 久久综合色天天久久综合图片| 99这里只有精品| 国产真实乱偷精品视频免| 亚洲综合色在线| 中文字幕在线视频一区| 精品国产精品一区二区夜夜嗨| 日本乱码高清不卡字幕| 高清国产午夜精品久久久久久| 日韩高清欧美激情| 亚洲午夜久久久久久久久久久 | 日韩欧美一二三区| 欧美午夜不卡视频| 99精品黄色片免费大全| 国产精品资源站在线| 免费在线成人网| 亚洲一区二区美女| 亚洲视频一区二区免费在线观看| 久久综合色天天久久综合图片| 在线播放91灌醉迷j高跟美女 | 精品一二线国产| 日本不卡视频在线观看| 亚洲午夜视频在线观看| 亚洲精品视频观看| 亚洲男人的天堂在线观看| 亚洲国产成人私人影院tom| 2023国产一二三区日本精品2022| 在线播放亚洲一区| 91麻豆精品国产91久久久资源速度 | 欧美精品一区二区三区蜜桃| 欧美久久久久久久久| 欧美性猛交xxxxxx富婆| 一本久久a久久精品亚洲| 成人app在线观看| 91小视频免费看| 91网站视频在线观看| 风间由美中文字幕在线看视频国产欧美| 久久精品久久综合| 久色婷婷小香蕉久久| 美国精品在线观看| 国产乱码精品1区2区3区| 韩国中文字幕2020精品| 韩国在线一区二区| 国产大片一区二区| 91视频国产资源| 欧美亚洲一区三区| 91.麻豆视频| 欧美tickling挠脚心丨vk| 国产欧美一区二区三区沐欲| 国产精品理论片| 亚洲国产一区二区视频| 三级在线观看一区二区 | 一区二区三区在线看| 香蕉影视欧美成人| 精品一区二区三区在线观看 | 亚洲在线视频网站| 日韩av中文字幕一区二区三区| 日本欧美韩国一区三区| 精品一区二区三区久久久| 99在线精品一区二区三区| 欧美日韩免费高清一区色橹橹 | 亚洲视频资源在线| 丝袜国产日韩另类美女| 老司机午夜精品| 成人黄色网址在线观看| 在线观看www91| 久久嫩草精品久久久精品一| 亚洲精品国产视频| 久久精品99国产国产精| 91影院在线免费观看| 欧美大片一区二区| 亚洲精选免费视频| 精品无人码麻豆乱码1区2区| 91在线看国产| 欧美成人福利视频| 一区二区三区蜜桃网| 国产一区在线观看视频| 欧美亚洲禁片免费| 久久久午夜精品理论片中文字幕| 亚洲自拍欧美精品| 成人一二三区视频| 日韩欧美三级在线| 一区二区三区国产| 成人免费毛片app|