Sha256: d3de29ee6470465d97fbc4efe5987e414e543b9cdeda2b5cc156b1b285d59a75

Contents?: true

Size: 800 Bytes

Versions: 12

Compression:

Stored size: 800 Bytes

Contents

#pragma once

#include "IRhoThreadImpl.h"
#include "AutoPointer.h"

namespace rho {
namespace common {

struct IRhoClassFactory;
class CRhoThread : public IRhoRunnable
{
    CAutoPtr<IRhoThreadImpl> m_pImpl;
    bool m_isInWaitState;
    bool m_bStop;
public:

    CRhoThread(IRhoClassFactory* factory);
    virtual ~CRhoThread(void){}

    virtual void start(EPriority ePriority);
    virtual void stop(unsigned int nTimeoutToKill){ m_bStop = true; m_pImpl->stop(nTimeoutToKill); }
    virtual void wait(unsigned int nTimeout){ m_isInWaitState = true; m_pImpl->wait(nTimeout); m_isInWaitState = false; }
    virtual void stopWait(){ if (m_isInWaitState) m_pImpl->stopWait(); }
    virtual void sleep(unsigned int nTimeout){ m_pImpl->sleep(nTimeout); }

    bool isStopped(){return m_bStop;}
};

}
}

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
rhodes-2.0.2 platform/shared/common/RhoThread.h
rhodes-2.0.0 platform/shared/common/RhoThread.h
rhodes-2.0.0.rc2 platform/shared/common/RhoThread.h
rhodes-2.0.0.rc1 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta11 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta10 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta9 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta8 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta7 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta6 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta4 platform/shared/common/RhoThread.h
rhodes-2.0.0.beta3 platform/shared/common/RhoThread.h