为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

C#Listen线程监听J2EE应用服务器指令强行关闭客户端

2017-12-02 2页 doc 13KB 14阅读

用户头像

is_614050

暂无简介

举报
C#Listen线程监听J2EE应用服务器指令强行关闭客户端C#Listen线程监听J2EE应用服务器指令强行关闭客户端 之前完成的一个以C#客户端通过Hessian调用Java服务的企业信息化项目,要求当web应用重新发布或者应用服务器重启时需告知所有客户端:由于什么原因(message),应用服务器将在多久(time)之后重启,请所有用户在多久之内做好数据保存工作,客户端将在多久之后强行退出。这里有2中实现方式: 1) 推的模式,服务器发消息通知所有客户端; 2) 拉的模式,客户端去监听服务器消息,服务器是否要重启; 相对来说2)的实现方式更简单,于是本案采用了2),为此需...
C#Listen线程监听J2EE应用服务器指令强行关闭客户端
C#Listen线程监听J2EE应用服务器指令强行关闭客户端 之前完成的一个以C#客户端通过Hessian调用Java服务的企业信息化项目,要求当web应用重新发布或者应用服务器重启时需告知所有客户端:由于什么原因(message),应用服务器将在多久(time)之后重启,请所有用户在多久之内做好数据保存工作,客户端将在多久之后强行退出。这里有2中实现方式: 1) 推的模式,服务器发消息通知所有客户端; 2) 拉的模式,客户端去监听服务器消息,服务器是否要重启; 相对来说2)的实现方式更简单,于是本案采用了2),为此需要在客户端开设一个Listen线程,用以监听应用服务器是否要重启。通常来说C#客户端应用,从启动到进入主窗口作业区有3个过程: 1) program引导; 2) login窗体,登录处理; 3) 进入main窗体,进行各种具体应用操作; 为此,建议在login窗体登录成功后,就启动ListenThread线程。 public class ListenThread { private static int count = 5*60*1000; // public static void ForceClosed() { ForceClosed(count); } //private static int count = 0; public static void ForceClosed(Object para) { count = (int)para; boolean listen = true; while(listen){ if(应用服务器是否要重启){ listen = false; } Thread.Sleep(count); } 强行关闭客户端 } } /////////////// 登录成功之后,启动ListenThread线程 //启动相关服务线程 Thread listenThread = new Thread(new ParameterizedThreadStart(ListenThread.ForceClosed)); listenThread.Start(5 * 60 * 1000); 为了友好起见,当ListenThread监听到应用服务器将要重启,执行强行关闭客户端操作的时候,最好能弹出一个对话框窗体(toplevel=true),显示下述信息: 1) 重启原因; 2) 数据保存提示; 3) 时间提示:多久之后客户端要强行关闭,多久之后用户可继续使用;
/
本文档为【C#Listen线程监听J2EE应用服务器指令强行关闭客户端】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索