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

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

?? thr-os2.c

?? GCC編譯器源代碼
?? C
字號:
/* GNU Objective C Runtime Thread Interface - OS/2 emx Implementation   Copyright (C) 1996, 1997 Free Software Foundation, Inc.   Contributed by Thomas Baier (baier@ci.tuwien.ac.at)This file is part of GNU CC.GNU CC is free software; you can redistribute it and/or modify it under theterms of the GNU General Public License as published by the Free SoftwareFoundation; either version 2, or (at your option) any later version.GNU CC is distributed in the hope that it will be useful, but WITHOUT ANYWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESSFOR A PARTICULAR PURPOSE.  See the GNU General Public License for moredetails.You should have received a copy of the GNU General Public Licensealong with GNU CC; see the file COPYING.  If not, write tothe Free Software Foundation, 59 Temple Place - Suite 330,Boston, MA 02111-1307, USA.  *//* As a special exception, if you link this library with files compiled with   GCC to produce an executable, this does not cause the resulting executable   to be covered by the GNU General Public License. This exception does not   however invalidate any other reasons why the executable file might be   covered by the GNU General Public License.  */#include <objc/thr.h>#include "runtime.h"#define INCL_DOSSEMAPHORES#define INCL_DOSPROCESS/* * conflicts with objc.h:       SEL, BOOL, id * solution:  prefixing those with _OS2_ before including <os2.h> */#define SEL _OS2_SEL#define BOOL _OS2_BOOL#define id _OS2_id#include <os2.h>#undef id#undef SEL#undef BOOL#include <stdlib.h>/* Backend initialization functions *//* Initialize the threads subsystem. */int__objc_init_thread_system(void){  return 0;}/* Close the threads subsystem. */int__objc_close_thread_system(void){  return 0;}/* Backend thread functions *//* Create a new thread of execution. */objc_thread_t__objc_thread_detach(void (*func)(void *arg), void *arg){  int thread_id = 0;  if ((thread_id = _beginthread (func,NULL,32768,arg)) < 0)    thread_id = 0;    return (objc_thread_t)thread_id;}/* Set the current thread's priority. */int__objc_thread_set_priority(int priority){  ULONG sys_class = 0;  ULONG sys_priority = 0;  /* OBJC_THREAD_INTERACTIVE_PRIORITY -> PRTYC_FOREGROUNDSERVER   * OBJC_THREAD_BACKGROUND_PRIORITY  -> PRTYC_REGULAR   * OBJC_THREAD_LOW_PRIORITY         -> PRTYC_IDLETIME */    switch (priority) {  case OBJC_THREAD_INTERACTIVE_PRIORITY:    sys_class = PRTYC_REGULAR;    sys_priority = 10;    break;  default:  case OBJC_THREAD_BACKGROUND_PRIORITY:    sys_class = PRTYC_IDLETIME;    sys_priority = 25;    break;  case OBJC_THREAD_LOW_PRIORITY:    sys_class = PRTYC_IDLETIME;    sys_priority = 0;    break;  }  /* Change priority */  if (!DosSetPriority (PRTYS_THREAD,sys_class,sys_priority,*_threadid))    return 0;  else    return -1;}/* Return the current thread's priority. */int__objc_thread_get_priority(void){  PTIB ptib;  PPIB ppib;  /* get information about current thread */  DosGetInfoBlocks (&ptib,&ppib);  switch (ptib->tib_ptib2->tib2_ulpri)    {    case PRTYC_IDLETIME:    case PRTYC_REGULAR:    case PRTYC_TIMECRITICAL:    case PRTYC_FOREGROUNDSERVER:    default:      return OBJC_THREAD_INTERACTIVE_PRIORITY;    }  return -1;}/* Yield our process time to another thread. */void__objc_thread_yield(void){  DosSleep (0);}/* Terminate the current thread. */int__objc_thread_exit(void){  /* terminate the thread, NEVER use DosExit () */  _endthread ();  /* Failed if we reached here */  return -1;}/* Returns an integer value which uniquely describes a thread. */objc_thread_t__objc_thread_id(void){  return (objc_thread_t) *_threadid;}/* Sets the thread's local storage pointer. */int__objc_thread_set_data(void *value){  *_threadstore () = value;  return 0;}/* Returns the thread's local storage pointer. */void *__objc_thread_get_data(void){  return *_threadstore ();}/* Backend mutex functions *//* Allocate a mutex. */int__objc_mutex_allocate(objc_mutex_t mutex){  if (DosCreateMutexSem (NULL, (HMTX)(&(mutex->backend)),0L,0) > 0)    return -1;  else    return 0;}/* Deallocate a mutex. */int__objc_mutex_deallocate(objc_mutex_t mutex){  DosCloseMutexSem ((HMTX)(mutex->backend));  return 0;}/* Grab a lock on a mutex. */int__objc_mutex_lock(objc_mutex_t mutex){  if (DosRequestMutexSem ((HMTX)(mutex->backend),-1L) != 0)    return -1;  else    return 0;}/* Try to grab a lock on a mutex. */int__objc_mutex_trylock(objc_mutex_t mutex){  if (DosRequestMutexSem ((HMTX)(mutex->backend),0L) != 0)    return -1;  else    return 0;}/* Unlock the mutex */int__objc_mutex_unlock(objc_mutex_t mutex){  if (DosReleaseMutexSem((HMTX)(mutex->backend)) != 0)    return -1;  else    return 0;}/* Backend condition mutex functions *//* Allocate a condition. */int__objc_condition_allocate(objc_condition_t condition){  /* Unimplemented. */  return -1;}/* Deallocate a condition. */int__objc_condition_deallocate(objc_condition_t condition){  /* Unimplemented. */  return -1;}/* Wait on the condition */int__objc_condition_wait(objc_condition_t condition, objc_mutex_t mutex){  /* Unimplemented. */  return -1;}/* Wake up all threads waiting on this condition. */int__objc_condition_broadcast(objc_condition_t condition){  /* Unimplemented. */  return -1;}/* Wake up one thread waiting on this condition. */int__objc_condition_signal(objc_condition_t condition){  /* Unimplemented. */  return -1;}/* End of File */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人免费av网站| 久久九九影视网| 久久久久久9999| 一区二区三区蜜桃| 岛国精品在线播放| 精品日本一线二线三线不卡| 亚洲免费观看高清在线观看| 国产麻豆精品一区二区| 欧美日本一区二区| 自拍偷拍欧美精品| 国产乱淫av一区二区三区| 欧美日本在线观看| 一区二区三区美女| 成人动漫一区二区在线| 精品处破学生在线二十三| 亚洲国产欧美在线人成| 99久久婷婷国产综合精品电影| 亚洲精品一区二区三区四区高清| 日韩精品高清不卡| 在线欧美一区二区| 亚洲免费在线电影| 91老师国产黑色丝袜在线| 国产区在线观看成人精品 | 欧美一区二区三区四区视频| 亚洲欧洲综合另类| www.欧美精品一二区| 国产日产亚洲精品系列| 国产精品一二三区| 国产亚洲精品aa| 国产精品 欧美精品| 精品日产卡一卡二卡麻豆| 久久精品国产免费看久久精品| 在线综合+亚洲+欧美中文字幕| 日韩国产在线一| 欧美一级淫片007| 蜜桃av一区二区三区| 精品国产一区二区三区久久影院| 久久99这里只有精品| 久久久久久久久久久久电影 | 成人免费毛片aaaaa**| 久久亚洲私人国产精品va媚药| 精品中文字幕一区二区| 久久综合九色综合欧美亚洲| 国产传媒日韩欧美成人| 国产精品久久久久影院老司| av男人天堂一区| 夜夜操天天操亚洲| 91麻豆精品久久久久蜜臀| 久久97超碰国产精品超碰| 久久久亚洲高清| 91在线播放网址| 日本不卡视频在线| 久久久久久亚洲综合| 99国产精品久久| 日本午夜一本久久久综合| 欧美精品一区二区蜜臀亚洲| 99re成人在线| 日韩专区中文字幕一区二区| 欧美成人性福生活免费看| 国产69精品久久久久毛片| 亚洲一区在线观看视频| 日韩精品影音先锋| 91小视频在线观看| 奇米色777欧美一区二区| 国产精品欧美一级免费| 欧美日韩成人在线| 成人黄色在线网站| 视频一区国产视频| 国产精品毛片久久久久久| 欧美日韩精品系列| 成人做爰69片免费看网站| 日韩黄色在线观看| 国产精品久久久久影院| 日韩欧美一级二级三级| av在线播放一区二区三区| 蜜臀av一级做a爰片久久| 亚洲视频一二三| 久久日韩精品一区二区五区| 欧美视频一区二区在线观看| 国产成人在线观看| 日产国产高清一区二区三区| 亚洲色图制服诱惑 | 久久99精品国产91久久来源| 亚洲同性gay激情无套| 欧美电影免费观看高清完整版在| 91久久精品日日躁夜夜躁欧美| 国产做a爰片久久毛片 | 国产精品视频线看| 日韩一区二区三区三四区视频在线观看| 成人教育av在线| 久久国产精品72免费观看| 亚洲va天堂va国产va久| 日韩理论在线观看| 欧美高清在线视频| 久久一二三国产| 欧美tk—视频vk| 欧美日韩国产精品自在自线| 91免费观看在线| 成人app网站| 成人一区在线看| 国产精品一区不卡| 国产一区二区三区在线看麻豆 | 亚洲欧美偷拍另类a∨色屁股| 久久蜜桃av一区二区天堂| 337p亚洲精品色噜噜| 欧美中文字幕一二三区视频| 99久久久精品| 91免费精品国自产拍在线不卡| eeuss鲁片一区二区三区在线看| 国产成人免费在线观看不卡| 国产精品亚洲一区二区三区在线| 老司机精品视频导航| 美女尤物国产一区| 国内精品国产成人| 国产精品夜夜嗨| 成人做爰69片免费看网站| 丁香婷婷综合五月| 成人av在线播放网址| 波多野结衣精品在线| 91美女精品福利| 欧洲一区二区av| 欧洲精品在线观看| 欧美精品精品一区| 91精品国产欧美一区二区| 日韩欧美一区二区不卡| 精品免费视频一区二区| 欧美mv日韩mv国产网站app| 精品国产电影一区二区| 久久久久国产精品麻豆| 中文字幕av一区二区三区免费看 | 精品999在线播放| 国产欧美日韩麻豆91| 亚洲欧美日本在线| 午夜精品久久久久久久蜜桃app| 日韩激情在线观看| 国产另类ts人妖一区二区| 99视频有精品| 欧美日韩精品一区二区天天拍小说| 制服丝袜亚洲色图| 国产偷国产偷精品高清尤物 | 欧美精品一区二区在线播放| 国产色91在线| 亚洲精选视频在线| 免费在线观看不卡| 成人网在线播放| 欧美吻胸吃奶大尺度电影| 日韩精品中文字幕在线不卡尤物| 国产亚洲欧美在线| 亚洲资源中文字幕| 激情综合五月婷婷| 91浏览器在线视频| 精品国产成人系列| 一区二区久久久| 韩日精品视频一区| 日本伦理一区二区| 久久久久国产一区二区三区四区| 亚洲激情五月婷婷| 国产一区二三区| 欧美三级韩国三级日本一级| 久久精品人人做| 日韩国产在线观看一区| 成人a免费在线看| 日韩美女主播在线视频一区二区三区 | 91片黄在线观看| 日韩一级片网站| 一区二区三区免费观看| 国产成人8x视频一区二区| 欧美日韩国产大片| 中文字幕五月欧美| 国产美女一区二区| 7777精品伊人久久久大香线蕉超级流畅 | 欧美日韩精品一区视频| 中文字幕精品在线不卡| 日韩精品一二三四| 日韩一区二区在线看| 《视频一区视频二区| 国产成人无遮挡在线视频| 精品日韩在线一区| 日韩成人dvd| 欧美最新大片在线看| **欧美大码日韩| 成人精品一区二区三区中文字幕| 在线观看91精品国产麻豆| 一区二区三区资源| 9i在线看片成人免费| 中文av一区二区| 国产在线播放一区| 亚洲精品在线观| 激情综合色播五月| 日韩精品一区二区三区中文精品| 亚洲mv在线观看| 欧美日韩激情一区二区| 亚洲愉拍自拍另类高清精品| 色又黄又爽网站www久久| 国产精品久久久久三级| 99在线精品观看| 亚洲色图.com| 91高清视频在线| 一区二区三区欧美日韩| 欧洲av一区二区嗯嗯嗯啊|