crawlermgr.h

来自「概述:数据的纵向收集」· C头文件 代码 · 共 40 行

H
40
字号
//sunwangme@hotmail.com
#pragma once

#include "ThreadMgr.h"
#include <atlstr.h>
#include "SynSet.h"
#include "SynHashSet.h"
#include "iocs.h"
#include "PageStat.h"

class CCrawlerMgr : public CThreadMgr
{
	friend CThreadMgr;
public:
	virtual ~CCrawlerMgr();
	virtual void StopAll();

//任务调度
protected:
	virtual BOOL DoWork(int nIndex);
	BOOL HandleTask(CPageStat& objTask);

protected:
	CCrawlerMgr();
	CCrawlerMgr(const CCrawlerMgr&);
	CCrawlerMgr& operator=(const CCrawlerMgr&);

//初始化任务和重新分配任务
protected:
	void AssignTask();					//分配任务
	void AssignTaskFromTemplate();		//解析模版得到初始种子
	void AssignTaskFromPageStat();		//从PageStat加载
	BOOL m_bTaskAssigned;				//是否已经分配初始种子任务

//容器
private:
	CSynHashSet<CString>	m_arrTaskError;
	CSynSet<CString>		m_arrTaskDoing;
};

⌨️ 快捷键说明

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