X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=winpr%2Flibwinpr%2Fthread%2Fthread.h;h=f187e263093baf8481f839a9249e1396dc8651d7;hb=fade0b3573171bb95b1c37e8662d8bf743cea9da;hp=97eb996956acab4112b7a23a3cf5ea50e12547d9;hpb=225285ae36f68b9d3891c3f817eff1a6fb3b5a7b;p=platform%2Fupstream%2Ffreerdp.git diff --git a/winpr/libwinpr/thread/thread.h b/winpr/libwinpr/thread/thread.h index 97eb996..f187e26 100644 --- a/winpr/libwinpr/thread/thread.h +++ b/winpr/libwinpr/thread/thread.h @@ -4,6 +4,7 @@ * * Copyright 2012 Marc-Andre Moreau * Copyright 2015 Hewlett-Packard Development Company, L.P. + * Copyright 2021 David Fort * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,15 +29,18 @@ #include #include "../handle/handle.h" +#include "../synch/event.h" +#include "apc.h" typedef void* (*pthread_start_routine)(void*); +typedef struct winpr_APC_item WINPR_APC_ITEM; struct winpr_thread { WINPR_HANDLE_DEF(); BOOL started; - int pipe_fd[2]; + WINPR_EVENT_IMPL event; BOOL mainProcess; BOOL detached; BOOL joined; @@ -50,6 +54,7 @@ struct winpr_thread pthread_cond_t threadIsReady; LPTHREAD_START_ROUTINE lpStartAddress; LPSECURITY_ATTRIBUTES lpThreadAttributes; + APC_QUEUE apc; #if defined(WITH_DEBUG_THREADS) void* create_stack; void* exit_stack; @@ -57,6 +62,8 @@ struct winpr_thread }; typedef struct winpr_thread WINPR_THREAD; +WINPR_THREAD* winpr_GetCurrentThread(VOID); + struct winpr_process { WINPR_HANDLE_DEF();