repositories
/
deb_libcec.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cec: fix GetTimeMs() on linux. add time in ms since startup to log messages
[deb_libcec.git]
/
src
/
lib
/
platform
/
threads.h
diff --git
a/src/lib/platform/threads.h
b/src/lib/platform/threads.h
index 4ae5ac72557433464e96236e9821aee8ba414561..4161de3261b12d68d7c4c137dc923ab1281db404 100644
(file)
--- a/
src/lib/platform/threads.h
+++ b/
src/lib/platform/threads.h
@@
-32,6
+32,7
@@
*/
#include "os-dependent.h"
*/
#include "os-dependent.h"
+#include <stdint.h>
namespace CEC
{
namespace CEC
{
@@
-43,9
+44,10
@@
namespace CEC
CCondition(void);
virtual ~CCondition(void);
CCondition(void);
virtual ~CCondition(void);
+ void Broadcast(void);
void Signal(void);
void Signal(void);
- bool Wait(CMutex *mutex,
int64_t iTimeout
);
- static void Sleep(
in
t iTimeout);
+ bool Wait(CMutex *mutex,
uint32_t iTimeout = 0
);
+ static void Sleep(
uint32_
t iTimeout);
private:
pthread_cond_t m_cond;
private:
pthread_cond_t m_cond;
@@
-67,7
+69,7
@@
namespace CEC
class CLockObject
{
public:
class CLockObject
{
public:
- CLockObject(CMutex *mutex);
+ CLockObject(CMutex *mutex
, bool bTryLock = false
);
~CLockObject(void);
bool IsLocked(void) const { return m_bLocked; }
~CLockObject(void);
bool IsLocked(void) const { return m_bLocked; }
@@
-86,15
+88,21
@@
namespace CEC
virtual ~CThread(void);
virtual bool IsRunning(void) const { return m_bRunning; }
virtual ~CThread(void);
virtual bool IsRunning(void) const { return m_bRunning; }
- virtual bool CreateThread(void);
- virtual void StopThread(bool bWaitForExit = true);
+ virtual bool CreateThread(bool bWait = true);
+ virtual bool StopThread(bool bWaitForExit = true);
+ virtual bool IsStopped(void) const { return m_bStop; };
+ virtual bool Sleep(uint32_t iTimeout);
static void *ThreadHandler(CThread *thread);
virtual void *Process(void) = 0;
protected:
static void *ThreadHandler(CThread *thread);
virtual void *Process(void) = 0;
protected:
- pthread_t m_thread;
- bool m_bRunning;
- bool m_bStop;
+ CCondition m_threadCondition;
+
+ private:
+ pthread_t m_thread;
+ CMutex m_threadMutex;
+ bool m_bStop;
+ bool m_bRunning;
};
};
};
};