⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qsystem.h

📁 BCB下的高效开发包。包含大并发的网络库
💻 H
字号:
#ifndef QSystemH
#define QSystemH
//------------------------------------------------------------------------------
#include <string>
//------------------------------------------------------------------------------

bool QRun(const std::string& Cmd);
int QCreateProcess(const std::string& Cmd, const std::string& Path);
int GetProcessHandleCount(int ProcessId);
int GetPID();
bool NewThread(void* lpFunAddr,void* lpParameter);
void RealSleep(unsigned int Ms);
//---------------------------------------------------------------------------
//互斥锁
class CriticalLock
{
        public:
                CriticalLock();
                ~CriticalLock();
                void Lock();
                void Free();
        private:
                void* m_Cs;
                CriticalLock(const CriticalLock&);
                CriticalLock& operator= (const CriticalLock&);
};
//------------------------------------------------------------------------------
//时间类
class QDateTime
{
        public:
                QDateTime();
                ~QDateTime();
                void Fresh();
                std::string DateTimeString()const;
                unsigned short Year()const;
                unsigned short Month()const;
                unsigned short DayOfWeek()const;
                unsigned short Day()const;
                unsigned short Hour()const;
                unsigned short Minute()const;
                unsigned short Second()const;
                unsigned short Milliseconds()const;
                int Cmp(const QDateTime& Dt)const;
        protected:
                friend QDateTime StrToDateTime(const std::string& Str);
                void* m_Time;
};
//---------------------------------------------------------------------------
class QWndCopyData
{
        public:
                static std::string Get(unsigned long LParam);
                static unsigned long _Send(const std::string& Data,void* hWnd);
                static unsigned long Send(const std::string& Data,const std::string& WinTitle);
};
//---------------------------------------------------------------------------
class QThread
{
        public:
                QThread();//自动停止
                virtual ~QThread();
                bool Start(void* Param);
                void Stop();
                void Pause(bool Pause);
                bool IsPowerOn()const;
                void PostStop();
        protected:
                //线程内需要经常手动检测此值,为真时应当执行退出
                bool IsCmdStop()const;
                void DoPause();
                virtual void Execute(void* Param)=0;
                virtual void OnCreate();
                virtual void OnDestroy();
        private:
                //Start中用户指定的Param,因为启动线程需要记录当前QThread对象指针,
                //用户参数只能另外中转
                void* m_UserParam;
                bool m_CmdStop;
                bool m_Working;
                bool m_Pause;
                friend int __stdcall _thWork(void* Param);
        private:
                QThread(const QThread&);
                QThread& operator= (const QThread&);
};
//---------------------------------------------------------------------------

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -