搞定windows关机慢 等待时间过长的问题

也许微软将Windows Vista开始菜单中的关机(Power)按钮预设为进入睡眠状态而不是传统意义上的关机,也有这方面的考虑? 毕竟进行睡眠状态的速度是有保障的。——当然,这也与Windows 系统自身的机制有关:Windows在发出关机指令后,需要首先通知已加载有服务、应用程序和进程等,待其逐一关闭后才能进行系统关机或重启的任务,此外,关机前要进行的操作还包括如清理页面文件等,需要对页面文件中的每个页面执行物理写入操作,从理论上讲,这些过程是不可省略的,不然将影响系统的稳定性。
  因此,对用户而言,要加快Windows Vista的关机速度,在保证系统稳定性前提下可做的优化不是跳过类似的服务、应用程序或进程的关闭,而是通过尽量缩短关闭前的等待时间。那么,在Windows Vista中,应如何操作呢?

  同之前的Windows系统一样,我们可以通过修改注册表调整相应选项来实现。

  缩短关闭服务前的等待时间

  上面我们提到过,在Windows Vista的关机流程中,系统首先向已加载的服务发出关闭警告,然后等待这些服务自动关闭后给出的关闭信号,如果在设定的等待时间期限后仍未收到关闭信号,Windows系统将相应的服务实施强行中止关闭。

  要加快Windows Vista的关机速度,首先可以通过缩短系统默认的关闭服务等待时间来实现。打开注册表编辑器,找到如下注册表项:

  HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control

  在右面板中,可以看到一个名为“WaitToKillServiceTimeout”的注册表项,双击以修改它,将它的数值从默认的20000(单位为毫秒)调整到一个较小的数值,如5000 甚至1000等,这样,如果Windows Vista在设置的5秒(5000)或1秒(1000)内没有收到服务关闭信号,系统即会弹出一个警告窗口,通知用户该服务无法中止,并给出强制中止服务或继续等待的选项等待用户选择。

  缩短关闭应用程序与进程前的等待时间

  与关闭服务前的等待时间类似,Windows Vista在强行关闭应用程序与进程前同样有一段等待该程序或进程自行关闭的时间,只有超过该时限后,Windows 系统才会将其强行中止。

  因此,缩短默认关闭应用程序或进行等待时间,同样能够加快Windows Vista的关机速度。

  设置方法同上面类似,在注册表中找到如下分支:

  HKEY_CURRENT_USER\Control Panel\Desktop

  双击右侧面板中的 “WaitToKillAppTimeout” ,将其值从默认的 20000(单位同样为毫秒)修改为较小的5000或1000,这样,Windows在发出关机指令后如果等待5秒或1秒仍未收到某个应用程序或进行的关闭信号,将弹出相应的警告信号,并询问用户是否强行中止。

  在右侧面板中还有一个名为 “HungAppTimeout” 的注册表项,该项对应于系统在用户强行关闭某个进程或应用程序后,如果该对象没有响应时的等待时间。其默认值为“5000”,一般可将其修改为“1000”。

  然后,在如下的注册表分支:

  HKEY_USERS\.DEFAULT\Control Panel\Desktop
  重复上面的操作,即修改“WaitToKillAppTimeout”与 “HungAppTimeout” 两个注册表项的值。

(0)

相关推荐

  • 用vbscript实现修改屏幕保护的等待时间长度

    问: 嗨,Scripting Guy!是否可以使用脚本来修改计算机上屏幕保护的等待时间长度? -- JN 答: 嗨,JN.出于某些原因,Microsoft 的脚本技术在涉及 Windows 设置和组件方面有些不足,例如屏幕保护.墙纸.任务栏和开始菜单等等.您可以使用 WMI(尤其是 Win32_Desktop 类)来读取这些值,但不能使用 Win32_Desktop 类(或是任何等价的类或对象)来修改这些值.为什么呢?老实说,我们也不知道: 幸好,这些值大都存储在 Windows 注册表中,而只

  • javaScript同意等待代码实现心得

    正确源程序如下: 复制代码 代码如下: <script type="text/javascript"> var lastTime = 3; function abc() { var btnReg = document.getElementById("btnReg"); if (!btnReg) { return; } if (lastTime <= 0) { btnReg.value = "同意"; btnReg.disable

  • jquery.blockUI.js上传滚动等待效果实现思路及代码

    请求的url: 复制代码 代码如下: function request(url, onSuccess, paras, method, isAsync, isMask) { $.ajax({type:method,url:url,async:isAsync,data:paras,success:function(request){onSuccess(request,isMask);},error:function(e) {if(isMask) $('#div_mask').unblock();},

  • JS实现图片预加载无需等待

    网站开发时经常需要在某个页面需要实现对大量图片的浏览,如果考虑流量的话,大可以像pconline一样每个页面只显示一张图片,让用户每看一张图片就需要重新下载一下整个页面.不过,在web2.0时代,更多人愿意用javascript来实现一个图片浏览器,让用户无需等待过长的时间就能看到其他图片. 知道了一张图片的地址,需要把它在一个固定大小的html容器(可以是div等)里边显示出来,最重要的当然是需要知道这张即将显示的图片的宽和高,然后再结合容器的宽和高,按照一定的缩放比例使图片显示出来.因此,实

  • 搞定windows关机慢 等待时间过长的问题

    也许微软将Windows Vista开始菜单中的关机(Power)按钮预设为进入睡眠状态而不是传统意义上的关机,也有这方面的考虑? 毕竟进行睡眠状态的速度是有保障的.--当然,这也与Windows 系统自身的机制有关:Windows在发出关机指令后,需要首先通知已加载有服务.应用程序和进程等,待其逐一关闭后才能进行系统关机或重启的任务,此外,关机前要进行的操作还包括如清理页面文件等,需要对页面文件中的每个页面执行物理写入操作,从理论上讲,这些过程是不可省略的,不然将影响系统的稳定性. 因此,对用

  • 批处理代码搞定Windows下Nginx+PHP(FastCGI)管理

    注意修改下开始头部的几个变量的值 程序代码 复制代码 代码如下: SET NGINX_PATH=D: SET NGINX_DIR=D:\nginx-0.7.63\ SET PHP_DIR=D:\PHP\ ++++++++++++++++++代码开始++++++++++++++++ cls @ECHO OFF SET NGINX_PATH=D: SET NGINX_DIR=D:\nginx-0.7.63\ SET PHP_DIR=D:\PHP\ color 0a TITLE Nginx+PHP 管

  • 轻松搞定iOS远程消息推送

    一.引言 IOS中消息的推送有两种方式,分别是本地推送和远程推送,本地推送在http://www.jb51.net/article/93602.htm这篇博客中有详细的介绍,这里主要讨论远程推送的流程与配置过程. 二.远程推送机制的原理 1.从一张很火的图说起 搜索IOS远程推送,你总能看到一张如下的流程示意图,因为这张图确实很火,所以我也将它引用在此: 这张图示意的很清晰,大致意思是这样:你的应用服务端将消息发送到apple的APNS服务器,APNS服务器将消息推送到指定的Iphone,最后由

  • 关于将Web项目部署到阿里云服务器(5个步骤搞定)

    1.先登录阿里云网站注册账号,选择服务器类型(我用的是 云服务器ECS), 如果你还是在读大学生可享受优惠价,最低好像是9.9元一月.之后勾选系统镜像. 2.购买好之后登录阿里云控制台. 找到自己的云服务器实例,可以点击远程连接然后进入远程桌面看看. 也可以在Windows本机端下的 远程桌面连接 如下图, 步骤 : 1.找到开始菜单下远程桌面连接 2. 输入 公网ip地址 3. 输入用户名:Administrator  密码:就是登录window系统的密码 3.  连接成功如下图. 注意 :

  • 大前端时代搞定PC/Mac端开发,我有绝招(收藏版)

    如果你是一位前端开发工程师,对"跨平台"一词应该不会感到陌生.像常见的前端框架:比如React.Vue.Angular,它们可以做网页端,也可以做移动端,但很少能做到跨PC.Mac端,也就是我们熟知的Windows.Linux以及macOS上的应用程序.即使有,受限于JS的性能瓶颈,当有大量的科学计算需求时,则会略显疲态. 有没有一个理想的UI框架能够通杀它们所有呢?答案是--Flutter. Flutter的性能优势 做为一个通用的跨平台的UI框架,Flutter在性能方面的突出表现

  • 一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃

    由于 Ubuntu 中的汉字输入实在是太不友好了,所以装了个 搜狗输入法,好不容易把 搜狗输入法装好,本以为可以开开心心的搞代码了,然而... pycharm 一打开,就崩溃,关不掉,进程杀死还是不行,只能关机重启. 本以为 pycharm 出现了问题,又重装了两遍,还是不行. 最终发现竟然是搜狗输入法以及 fcitx 输入法的锅 唉,只能老老实实的把 fctix 和搜狗输入法卸载了: (1)Ubuntu 软件里卸载 fctix,然后将键盘输入法系统改成 IBus (2)卸载搜狗输入法 先查找软

  • Spring Boot之搞定mongoTemplate的知识小结

    最近开发一些MongoDB+Spring Boot的项目,发现相较于MyBatis来说,Spring Boot对于MongoDB进行操作变化更多,所以总结一下使用mongoTemplate库的知识点,以备以后查阅方便. 首先在项目中的pom.xml配置文件中添加如下依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-

  • 一文彻底搞定Java哈希表和哈希冲突

    一.什么是哈希表? 哈希表也叫散列表,它是基于数组的.这间接带来了一个优点:查找的时间复杂度为 O(1).当然,它的插入时间复杂度也是 O(1).还有一个缺点:数组创建后扩容成本较高. 哈希表中有一个"主流"思想:转换.一个重要的概念是将「键」或「关键字」转换成数组下标.这由"哈希函数"完成. 二.什么是哈希函数? 由上,其作用就是将非 int 的键/关键字转化为 int 的值,使可以用来做数组下标. 比如,HashMap 中就这样实现了哈希函数: static f

  • 10分钟搞定Java并发队列

    前言 如果按照用途与特性进行粗略的划分,JUC 包中包含的工具大体可以分为 6 类: 执行者与线程池 并发队列 同步工具 并发集合 锁 原子变量 在并发系列中,主要讲解了 执行者与线程池,同步工具,锁 , 在分析源码时,或多或少的提及到了「队列」,队列在 JUC 中也是多种多样存在,所以本文就以「远看」视角,帮助大家快速了解与区分这些看似「杂乱」的队列 并发队列 Java 并发队列按照实现方式来进行划分可以分为 2 种: 阻塞队列 非阻塞队列 如果你已经看完并发系列锁的实现,你已经能够知道他们实

  • idea一招搞定同步所有配置(导入或导出所有配置)

    目录 intellij idea同步所有配置[导入或导出所有配置] [补充]intellij idea将自己的设置同步到账号中 intellij idea同步所有配置[导入或导出所有配置] IDEA版本:2020.1 [原因]使用intellij idea很长一段时间,软件相关的配置也都按照自己习惯的设置好,如果需要重装软件,还得需要重新设置 [操作]: 1.首先将本地的设置上传到云端[其中可能会修改写插件-在右下角点击云朵修改即可] 2.在另一台电脑上同步设置[同步在右下角小云朵] 同时要将s

随机推荐