我正试图了解会话-超时-空闲处理Java中的多线程。
我有一个服务器和客户端应用程序通过 telnet 进行通信,我需要检查用户是否在一段时间内输入(任何内容)、单击(任何地方)或移动鼠标。
如果没有,用户将收到一个对话框提示,询问他是否要继续会话。...(如果没有,用户将在下一分钟左右自动注销。)
我的应用程序有多个线程。( - 每个线程一个用户)。所以我不确定如何以最好的(也是最简单的)方式来解决这个问题?
我知道这是一个广泛而牵强的问题,但我希望你们中的一些人能给我一个正确方向的指针或提示...... :)
我有点希望有一个简单的方法可以检查:(有点伪代码:)
if (idle = true){
timer.start();
if (timer > 120sec)
displayWaringJFrame("Continue Session? - YES or NO ?)
displayTimer.start();
if (displayTimer > 30sec)
application.user.closeSession()
...或类似的东西!:)