关于QueueUserAPC调用函数的问题

yangdongxuec123 2011-07-15 08:39:26
使用QueueUserApc出现了问题:下面是我的两个类的方法!一个是增加功能,一个是删除功能。他们都通过QueueUserAPC调用另一个类CFileChangesServer的方法AddDirectoryProc和CanclDirectoryProc来实现增加和删除记录的功能!可奇怪的是调用AddDirectory是并没有问题!我debug时跟踪程序流程,发现确实是调用到了AddDirectoryProc,但是调用CanclDirectory函数时发现并没有调用CanclDirectoryProc函数,而是继续使用了AddDirectProc函数!这是为什么呢?
CWatchFileChanges::AddDirectory(LPCTSTR szDirectory,BOOL bWatchSubtree, DWORD dwNotifyFilter, DWORD dwBufferSize)
{
CWatchChangesRequst *pRequest= new CWatchChangesRequst(m_pServer,szDirectory,bWatchSubtree,dwNotifyFilter,dwBufferSize);
QueueUserAPC(CFileChangesServer::AddDirectoryProc, m_hThread, (ULONG_PTR)pRequest);

}


CWatchFileChanges::CanclDirectory(LPCTSTR szDirectory,BOOL bWatchSubtree, DWORD dwNotifyFilter, DWORD dwBufferSize)
{
CWatchChangesRequst *pRequest= new CWatchChangesRequst(m_pServer,szDirectory,bWatchSubtree,dwNotifyFilter,dwBufferSize);
QueueUserAPC(CFileChangesServer::CanclDirectoryProc, m_hThread, (ULONG_PTR)pRequest);

}
...全文
130 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangdongxuec123 2011-07-15
  • 打赏
  • 举报
回复
没有人吗?帮帮忙啊!
野男孩 2011-07-15
  • 打赏
  • 举报
回复
不知道。。。用QueueUserWorkItem多一些,没见啥问题~
xupujiang_126 2011-07-15
  • 打赏
  • 举报
回复
学习中……
wocow3 2011-07-15
  • 打赏
  • 举报
回复
没啥问题,
CFileChangesServer::AddDirectoryProc
CFileChangesServer::CanclDirectoryProc
是类中静态的吧

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧