Sha256: 5aceb674b826e039969596fadff7fc1e5159ce85a4a93238f9caf758145e2415

Contents?: true

Size: 779 Bytes

Versions: 1

Compression:

Stored size: 779 Bytes

Contents

#ifndef RHO_POSIX_THREAD_IMPL_9e4b35f90ae146ae9c809ca56e4ef856
#define RHO_POSIX_THREAD_IMPL_9e4b35f90ae146ae9c809ca56e4ef856

#include "common/IRhoThreadImpl.h"
#include "logging/RhoLog.h"

namespace rho
{
namespace common
{

class CPosixThreadImpl : public IRhoThreadImpl
{
    DEFINE_LOGCLASS;
public:
    CPosixThreadImpl();
    ~CPosixThreadImpl();

    void start(IRhoRunnable *pRunnable, IRhoRunnable::EPriority ePriority);
    void stop(unsigned int nTimeoutToKill);
    void wait(unsigned int nTimeout);
    void stopWait();
    void sleep(unsigned int nTimeout);

private:
    pthread_cond_t m_condSync;
    common::CMutex m_mxSync;
    pthread_t m_thread;
};

} // namespace common
} // namespace rho

#endif // RHO_POSIX_THREAD_IMPL_9e4b35f90ae146ae9c809ca56e4ef856

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rhodes-2.0.3 platform/shared/common/PosixThreadImpl.h