Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winapi 真的有必要吗?_Winapi_Timer - Fatal编程技术网

Winapi 真的有必要吗?

Winapi 真的有必要吗?,winapi,timer,Winapi,Timer,这似乎是一个重复的问题,但我想通过可靠来源证实这一点 销毁窗口真的释放了操作系统为计时器分配的资源吗?(销毁WindowsTimer是否真的会被调用,更不用说实际存在这样的函数了?如果真的存在,在哪里?在谷歌搜索中,对它唯一真实的引用似乎是一些Win2k源代码。这个url以/censhis/win2k_sources/private/../timers.c结尾,我从一段时间前就开始假设了。我没有看代码,也不会在这里发布链接 该函数很可能存在——对于链接到窗口句柄的计时器,几乎必须存在类似的函数—

这似乎是一个重复的问题,但我想通过可靠来源证实这一点


销毁窗口真的释放了操作系统为计时器分配的资源吗?(销毁WindowsTimer是否真的会被调用,更不用说实际存在这样的函数了?如果真的存在,在哪里?

在谷歌搜索中,对它唯一真实的引用似乎是一些Win2k源代码。这个url以
/censhis/win2k_sources/private/../timers.c
结尾,我从一段时间前就开始假设了。我没有看代码,也不会在这里发布链接

该函数很可能存在——对于链接到窗口句柄的计时器,几乎必须存在类似的函数——因为计时器消息被传递到特定的窗口句柄


在文档中,我看不到任何地方说明您不必调用
KillTimer
来摆脱计时器。因此,根据记录在案的合同,您需要调用
KillTimer
。实际上,Windows可能会为您清理它,但由于这是未记录的行为,您应该按照记录的行为编写代码,并在所有计时器上调用
KillTimer

不,这是不必要的。从以下文件中(加上重点):

该功能将
WM_DESTROY
WM_NCDESTROY
消息发送到窗口,以将其停用并从窗口中移除键盘焦点。该函数还将销毁窗口的菜单、刷新线程消息队列、销毁计时器、删除剪贴板所有权并断开剪贴板查看器链(如果窗口位于查看器链的顶部)