标签:
如何防止窗口界面假死
在操作Windows、Android、
Linux、IOS、Linux以及Mac OS X等系统的时候
偶尔会出现死机(宕机)的情况。
当硬件失效或者软件出错时将引起真死
此时不可等待所有冗余备用硬件或软件全部消耗完毕后再做处理,
必需立即备份数据并更换出错部件(零件)并重新引导系统硬件和软件。
当硬件和软件都完好只是系统设计不合理引起的假死那么就应当重新设计硬件和软件。
那么如何防止出现界面假死呢?
我认为要防止出现界面假死需要从以下几个方面去加强。
1、瘦界面
在设计操作系统或者应用程序时应当科学的设计
用户界面、任务管理和资源管理的分割规则
资源分配器把有限但足够的CPU、RAM、HDD时间资源分配给界面
界面通过有限的受约束的逻辑管道和物理管道与任务和资源进行通讯
由于任务或者资源分配不会抢占界面所独占的硬件、软件和时间
所以理论上界面是不会假死和真死的,除非界面相关资源失效。
2、限制任务数量和规模
在提交任务时先由软件预测任务的规模是否适用于当前系统容量。
【例如在复制一个文件到另一个磁盘时电脑先检测所需复制文件这个任务是否会引起界面假死
如果有可能引起界面假死则记录此操作,撤销此操作,并提示用户】
3、限制人
通过权限控制禁止引起假死操作的情况发生
4、限制软件
先测试后安装
5、加强硬件
使用更高版本的CPU、RAM和HDD
6、延时任务队列服务
把任务记录到表格中并为任务平均分配时间
界面不是等待用户下达的任务全部操作完成后再接受下一个命令
界面首先接受并记录任务,然后立即又开始接受下一个命令
用户看不到界面假死,因为真正的任务被完全阻塞到另一个线程、进程、设备或者网络中去了。
而本地硬件和软件永远可以远远满足瘦界面的资源请求。
因为界面只负责接受、记录和发送任务,界面并不执行任务。
同时,其他硬件、其他软件、其他设备、其他网络没有权限争夺界面的资源
其他硬件和其他软件只负责执行任务并返回执行结果
简单的说就是把界面所需的资源和其他部分从硬件和软件上完全隔离分布开来。
7、加强软件线程设计
以上是从人员制度管理规范和部署配置权限设计上防止死机
加强软件线程设计也可以加快软件的界面响应速度
http://www.cnblogs.com/lackey
delphi 把多个线程的请求阻塞到另一个线程 TElegantThread
http://www.cnblogs.com/lackey/p/4782777.html
总之:不要去改变个人使用习惯,而是要从权限制度,防火墙配置。
科学合理设计物理配置上去防止、去限制死机(宕机)现象的发生。
同时也可以设计一些防止死机的专用设备硬件和软件。从硬件、从底层、从根本上去防止死机。
{ ******************************************************* }
{ 徐晓亮的XE8编程博客 http://www.cnblogs.com/delphixx }
{ Searched by xe8 (QQ: 595076941) }
{ 2016.6.19 All Right Not ( Reserved ); }
{ ******************************************************* }
{
互联网搜索引擎
http://www.so.com/
http://www.soso.com/
http://www.baidu.com/
我建议像我这样喜欢用AutoHotkey和Delphi编程的年轻人多尝试
多搜搜、多编程、多归类、多收藏、多上传、多刻录、多交流分享
把所有有用的AutoHotkey和Delphi源代码实例等等编程资源都
分类保存到2.5寸移动硬盘中并且上传到360云盘和百度云网盘中
不要到要用的时候乱找乱搜乱试.把编程经验写在《为知笔记》wiz.cn中
同时把绿色免装软件也放到移动硬盘用Total Commander集中管理
< 淘宝包邮 2.5寸 4TB 移动硬盘 、 淘宝包邮DVD刻录光盘 >
如要收藏此博客请立即按热键 <CTRL> + D
此博客网址 http://www.cnblogs.com/delphixx
我的电子邮箱地址是: 595076941@qq.com
联系我邮件标题写上 "博客园" 字样 否则邮件自动删除
本文由 徐晓亮 在2016年6月19日编辑修改 我用Delphi XE8
}
标签:
原文地址:http://www.cnblogs.com/delphixx/p/5598107.html