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

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

?? wince-port

?? 附件是linux下面非常經典的線程庫
??
字號:
NOTE: The comments in this file relate to the original WinCE port
done by Tristan Savatier. The semaphore routines have been 
completely rewritten since (2005-04-25), having been progressively
broken more and more by changes to the library. All of the semaphore
routines implemented for W9x/WNT/2000 and up should now also work for
WinCE. Also, pthread_mutex_timedlock should now work. [RPJ]

----

Some interesting news:

I have been able to port pthread-win32 to Windows-CE,
which uses a subset of the WIN32 API.

Since we intend to keep using pthread-win32 for our
Commercial WinCE developments, I would be very interested
if WinCE support could be added to the main source tree
of pthread-win32.  Also, I would like to be credited
for this port :-)

Now, here is the story...

The port was performed and tested on a Casio "Cassiopeia"
PalmSize PC, which runs a MIP processor.  The OS in the
Casio is WinCE version 2.11, but I used VC++ 6.0 with
the WinCE SDK for version 2.01.

I used pthread-win32 to port a heavily multithreaded
commercial application (real-time MPEG video player)
from Linux to WinCE.  I consider the changes that
I have done to be quite well tested.

Overall the modifications that we had to do are minor.

The WinCE port were based on pthread-win32-snap-1999-05-30,
but I am certain that they can be integrated very easiely
to more recent versions of the source.

I have attached the modified source code:
pthread-win32-snap-1999-05-30-WinCE.

All the changes do not affect the code compiled on non-WinCE
environment, provided that the macros used for WinCE compilation
are not used, of course!

Overall description of the WinCE port:
-------------------------------------

Most of the changes had to be made in areas where
pthread-win32 was relying on some standard-C librairies
(e.g. _ftime, calloc, errno), which are not available
on WinCE. We have changed the code to use native Win32
API instead (or in some cases we made wrappers).

The Win32 Semaphores are not available,
so we had to re-implement Semaphores using mutexes
and events.

Limitations / known problems of the WinCE port:
----------------------------------------------

Not all the semaphore routines have been ported
(semaphores are defined by Posix but are not part
pf pthread).  I have just done enough to make
pthread routines (that rely internally on semaphores)
work, like signal conditions.

I noticed that the Win32 threads work slightly
differently on WinCE.  This may have some impact
on some tricky parts of pthread-win32, but I have
not really investigated.  For example, on WinCE,
the process is killed if the main thread falls off
the bottom (or calls pthread_exit), regardless
of the existence of any other detached thread.
Microsoft manual indicates that this behavior is
deffirent from that of Windows Threads for other
Win32 platforms.


Detailed descriptions of the changes and rationals:

------------------------------------
- use a new macro NEED_ERRNO.

If defined, the code in errno.c that defines a reentrant errno
is compiled, regardless of _MT and _REENTRANT.

Rational: On WinCE, there is no support for <stdio.h>, <errno.h> or
any other standard C library, i.e. even if _MT or _REENTRANT
is defined, errno is not provided by any library.  NEED_ERRNO
must be set to compile for WinCE.

------------------------------------
- In implement.h, change #include <semaphore.h> to #include "semaphore.h".

Rational: semaphore.h is provided in pthread-win32 and should not
be searched in the systems standard include.  would not compile.
This change does not seem to create problems on "classic" win32
(e.g. win95).

------------------------------------
- use a new macro NEED_CALLOC.

If defined, some code in misc.c will provide a replacement
for calloc, which is not available on Win32.


------------------------------------
- use a new macro NEED_CREATETHREAD.

If defined, implement.h defines the macro _beginthreadex
and _endthreadex.

Rational: On WinCE, the wrappers _beginthreadex and _endthreadex
do not exist. The native Win32 routines must be used.

------------------------------------
- in misc.c:

#ifdef NEED_DUPLICATEHANDLE
	  /* DuplicateHandle does not exist on WinCE */
	  self->threadH = GetCurrentThread();
#else
	  if( !DuplicateHandle(
			       GetCurrentProcess(),
			       GetCurrentThread(),
			       GetCurrentProcess(),
			       &self->threadH,
			       0,
			       FALSE,
			       DUPLICATE_SAME_ACCESS ) )
	    {
	      free( self );
	      return (NULL);
	    }
#endif

Rational: On WinCE, DuplicateHandle does not exist.  I could not understand
why DuplicateHandle must be used.  It seems to me that getting the current
thread handle with GetCurrentThread() is sufficient, and it seems to work
perfectly fine, so maybe DuplicateHandle was just plain useless to begin with ?

------------------------------------
- In private.c, added some code at the beginning of ptw32_processInitialize
to detect the case of multiple calls to ptw32_processInitialize.

Rational: In order to debug pthread-win32, it is easier to compile
it as a regular library (it is not possible to debug DLL's on winCE).
In that case, the application must call ptw32_rocessInitialize()
explicitely, to initialize pthread-win32.  It is safer in this circumstance
to handle the case where ptw32_processInitialize() is called on
an already initialized library:

int
ptw32_processInitialize (void)
{
	if (ptw32_processInitialized) {
		/* 
		 * ignore if already initialized. this is useful for 
		 * programs that uses a non-dll pthread
		 * library. such programs must call ptw32_processInitialize() explicitely,
		 * since this initialization routine is automatically called only when
		 * the dll is loaded.
		 */
		return TRUE;
	}
    ptw32_processInitialized = TRUE;
  	[...]
}

------------------------------------
- in private.c, if macro NEED_FTIME is defined, add routines to
convert timespec_to_filetime and filetime_to_timespec, and modified
code that was using _ftime() to use Win32 API instead.

Rational: _ftime is not available on WinCE.  It is necessary to use
the native Win32 time API instead.

Note: the routine timespec_to_filetime is provided as a convenience and a mean
to test that filetime_to_timespec works, but it is not used by the library.

------------------------------------
- in semaphore.c, if macro NEED_SEM is defined, add code for the routines
_increase_semaphore and _decrease_semaphore, and modify significantly
the implementation of the semaphores so that it does not use CreateSemaphore.

Rational: CreateSemaphore is not available on WinCE.  I had to re-implement
semaphores using mutexes and Events.

Note: Only the semaphore routines that are used by pthread are implemented
(i.e. signal conditions rely on a subset of the semaphores routines, and
this subset works). Some other semaphore routines (e.g. sem_trywait) are
not yet supported on my WinCE port (and since I don't need them, I am not
planning to do anything about them).

------------------------------------
- in tsd.c, changed the code that defines TLS_OUT_OF_INDEXES

/* TLS_OUT_OF_INDEXES not defined on WinCE */
#ifndef TLS_OUT_OF_INDEXES
#define TLS_OUT_OF_INDEXES 0xffffffff
#endif

Rational: TLS_OUT_OF_INDEXES is not defined in any standard include file
on WinCE.

------------------------------------
- added file need_errno.h

Rational: On WinCE, there is no errno.h file. need_errno.h is just a
copy of windows version of errno.h, with minor modifications due to the fact
that some of the error codes are defined by the WinCE socket library.
In pthread.h, if NEED_ERRNO is defined, the file need_errno.h is
included (instead of <errno.h>).


-- eof

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩综合一区二区| 日韩av在线发布| 精品美女一区二区三区| 欧美影视一区二区三区| av电影一区二区| 国产精品一区专区| 蜜桃av噜噜一区| 五月婷婷久久综合| 一级女性全黄久久生活片免费| 精品国产乱码久久| 久久久精品欧美丰满| 精品久久久久久久久久久久包黑料| 欧美三级午夜理伦三级中视频| 菠萝蜜视频在线观看一区| 成人一区在线看| 成人综合婷婷国产精品久久免费| 久久91精品久久久久久秒播| 美女视频一区在线观看| 青娱乐精品视频| 蜜桃视频在线观看一区二区| 日韩精品1区2区3区| 老司机午夜精品| 老司机一区二区| 国产福利精品导航| av爱爱亚洲一区| 欧美无人高清视频在线观看| 337p亚洲精品色噜噜噜| 欧美电影免费观看高清完整版 | 欧美人牲a欧美精品| 555夜色666亚洲国产免| 久久久亚洲欧洲日产国码αv| 中文字幕欧美日本乱码一线二线| 国产精品丝袜黑色高跟| 亚洲综合成人在线视频| 精品在线播放免费| a在线播放不卡| 欧美人体做爰大胆视频| 26uuu国产在线精品一区二区| 国产精品久久毛片av大全日韩| **欧美大码日韩| 日本美女一区二区| 成人18视频日本| 日韩精品一区二区三区在线| 国产精品久久毛片a| 日本91福利区| 日本二三区不卡| 国产日韩av一区| 蜜桃精品在线观看| 欧美影院一区二区| 亚洲视频 欧洲视频| 国产91精品精华液一区二区三区| 欧美视频一区在线观看| 国产精品色婷婷| 国产精品一级在线| 日韩视频一区二区三区| 亚洲第四色夜色| 色综合久久综合网欧美综合网| 久久久精品tv| 国产一区二区三区在线观看免费 | 夜夜操天天操亚洲| 99久久精品国产毛片| 欧美极品aⅴ影院| 国产91清纯白嫩初高中在线观看| 日韩欧美在线不卡| 蜜桃视频第一区免费观看| 欧美日韩在线播放三区四区| 亚洲蜜臀av乱码久久精品蜜桃| 粉嫩久久99精品久久久久久夜| 久久久午夜精品| 成人国产免费视频| 成人免费视频在线观看| 不卡一二三区首页| 亚洲综合图片区| 7777精品伊人久久久大香线蕉的 | 欧美激情在线观看视频免费| 国产suv精品一区二区883| 国产精品丝袜一区| 欧美综合欧美视频| 青青草国产精品97视觉盛宴| 久久综合九色综合欧美98| 国产盗摄视频一区二区三区| 亚洲免费av在线| 欧美一二三在线| 成人精品免费网站| 污片在线观看一区二区| 2023国产精品视频| 99国产精品久久久久久久久久 | 欧美亚州韩日在线看免费版国语版| 亚洲自拍都市欧美小说| 欧美精品一区二区三区四区| 不卡av免费在线观看| 日本成人超碰在线观看| 国产精品日韩精品欧美在线| 欧美网站大全在线观看| 国产成人午夜电影网| 一区二区三区四区高清精品免费观看| 欧美另类一区二区三区| 福利一区二区在线| 亚洲成人手机在线| 国产欧美日韩综合| 日韩一区二区三区精品视频| 99re视频精品| 国产麻豆精品theporn| 日韩国产欧美在线播放| 一区二区三区欧美在线观看| 国产日韩欧美综合在线| 日韩欧美亚洲国产精品字幕久久久 | 亚洲一区二区成人在线观看| 久久这里只有精品首页| 欧美一区二区三区婷婷月色| 欧美在线观看一区二区| 一本色道亚洲精品aⅴ| 成人涩涩免费视频| 国产精品自拍网站| 九九久久精品视频| 久草精品在线观看| 麻豆国产欧美一区二区三区| 日本美女视频一区二区| 日韩有码一区二区三区| 性感美女极品91精品| 午夜精品福利久久久| 香蕉av福利精品导航| 亚洲不卡在线观看| 日精品一区二区| 美女在线视频一区| 美女视频免费一区| 国产精品亚洲午夜一区二区三区| 国产在线精品一区二区| 久久精品国产成人一区二区三区| 久久综合久久综合久久| 久久久精品黄色| 亚洲色图制服诱惑| 日韩精品亚洲一区二区三区免费| 麻豆久久久久久久| 国产不卡视频在线播放| 欧美色综合网站| 亚洲精品在线观| 一区二区三区四区乱视频| 日本成人在线视频网站| 北条麻妃国产九九精品视频| 欧美日韩一级片网站| 欧美激情一区二区三区在线| 一区二区三区自拍| 国产精品88888| 欧美精品色一区二区三区| 中文字幕欧美激情一区| 日韩在线a电影| 色综合色综合色综合色综合色综合 | 国产一区二区三区精品欧美日韩一区二区三区| 国产传媒欧美日韩成人| 欧美性受xxxx黑人xyx性爽| 国产精品午夜久久| 日本va欧美va欧美va精品| 91小视频免费看| 久久蜜桃av一区精品变态类天堂| 一区二区在线观看免费| 国产成人夜色高潮福利影视| 欧美xxxx在线观看| 视频一区视频二区中文| 欧美优质美女网站| 中文字幕一区二区三区在线播放| 麻豆精品国产传媒mv男同| 欧美日韩国产综合久久 | 国产成人精品免费一区二区| 欧美精品色一区二区三区| 一级特黄大欧美久久久| 色综合欧美在线| 日韩伦理av电影| 一本到一区二区三区| 一区二区三区四区不卡视频| 99综合电影在线视频| 亚洲免费观看在线视频| 91福利精品视频| 亚洲成av人片一区二区梦乃| 在线电影一区二区三区| 美女性感视频久久| 久久久久久久久久电影| 不卡的电视剧免费网站有什么| 综合欧美亚洲日本| 欧美亚洲综合色| 日本欧美加勒比视频| 精品国产乱码久久| 成人免费毛片app| 亚洲午夜久久久久久久久电影院| 欧美日韩在线直播| 国产在线国偷精品产拍免费yy| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 欧美中文字幕一区| 美女任你摸久久| 国产精品天天看| 欧美精品99久久久**| 国产成人午夜片在线观看高清观看| 国产精品乱子久久久久| 欧美久久久久免费| 成人激情综合网站| 麻豆传媒一区二区三区| 亚洲精品免费在线播放| 精品福利在线导航| 欧美日韩极品在线观看一区| 粉嫩aⅴ一区二区三区四区 |