0 0

怎么触发和关闭线程?10

    我遇到的问题是:我在页面上有个timer,没2000ms调用一次相关的java方法,从这个java方法中判断一个值,如果满足条件就触发报警,但是这样就带来一个问题:每2000ms就会报警一次,这样就重复报警n次了,怎么才能让他有再值满足条件的时候报警一次,比如说,现在数据库中有一条记录满足条件,报警一次,下次又增加了一条满足条件的记录,然后再报警一次,以此类推,这个该怎么用java线程去解决,表示java线程接触的比较少,请各位大神指教!
2013年8月12日 10:12

3个答案 按时间排序 按投票排序

1 0

采纳的答案

思路应该分开: 一个是产生警报数据, 一个是遇到警报数据发出警报。
页面上有timer之后, 只需要java代码中做判读就可以了, 给警报数据设置一个状态,如:新插入的为0  已经报警过的为1, 每次加载为0的数据, 如果不为空就报警并都改为1就行了呗
这跟线程不搭嘎

2013年8月12日 10:31
1 0

1.用里面放一个map,或者set,把报过警的记录id放入,每次查询出符合条件的记录后,看map中是否还有该id,如果有,不报警,没有则报警并放入map
2.在库中新建一张表存放报警过的记录,查询的时候用左关联查询未报警的记录,报警成功后往新建的那张表中插入数据。

2013年8月12日 11:10
0 0

[size=x-large]用spring quartz 可以解决,学习下吧 !~[/size]

2013年8月12日 11:27

相关推荐

    c# 多线程任务中结束全部线程

    `调用`D`委托,触发了`Form1`中的`cccc`方法,实现了线程之间的通信和控制。 ### 优雅地关闭线程 在多线程程序中,优雅地关闭所有线程是非常重要的,因为不正确的关闭可能导致资源泄露或程序状态的不确定性。在...

    PyQt5多线程的执行和停止

    5. 用户界面提供按钮来触发各个线程的信号,如“开始”、“暂停”、“恢复”和“停止”。 通过这样的设计,我们可以实现多线程的并发执行,并具有灵活的控制和可视化的进度反馈。这种技术在处理大量数据处理、网络...

    用线程实现的定时器Timer

    6. **关闭定时器**: 当不再需要定时器时,可以设置线程事件为已触发状态,让线程退出,然后销毁线程和事件对象。 使用这种方式实现的定时器有以下优点: - **独立性**:线程定时器不依赖于窗体消息循环,可以在...

    linux epoll多线程编程 例子

    此外,epoll支持水平触发和边缘触发两种模式,边缘触发更高效,因为它只通知一次文件描述符状态的变化。 在多线程编程中,epoll可以配合线程池来优化性能。线程池是一种线程使用模式,预先创建一组线程,当有任务...

    MFC多线程 多事件

    本文将深入探讨如何利用MFC来实现多线程以及多事件之间的相互触发。 首先,多线程是并发编程的一种方式,允许程序同时执行多个独立的任务。在MFC中,我们可以使用`CWinThread`类来创建和管理线程。创建一个新的线程...

    Delphi之TServerSocket和TClientSocket多线程传输

    例如,客户端可能需要处理连接失败或断开的情况,而服务器端需要处理线程异常以及关闭无响应的客户端连接。此外,为了提高效率,你可能需要实现缓冲区管理和数据分块策略,以避免一次性读写大量数据导致的阻塞。 总...

    多线程demo程序-轻松掌握多线程技术

    在编程领域,多线程是实现并发执行任务的关键技术,特别是在服务器端开发和高并发应用中,多线程能够充分利用CPU资源,提高程序的运行效率。这个名为"多线程demo程序-轻松掌握多线程技术"的项目,旨在帮助开发者理解...

    VB6 多线程案例,测试可用。

    VB6中可能使用`ExitThread`来结束线程,同时确保XMLHTTP对象被正确关闭和清理。 7. **性能优化**:合理配置线程的数量,避免过多线程导致的资源浪费和系统负担。在VBMThread10Demo中,两个线程的设置可能是为了在...

    C#线程及定时器的功能实现

    在C#编程中,线程和定时器是两个非常重要的概念,它们在多任务处理和时间触发事件中发挥着核心作用。本项目基于C#2008,旨在实现线程和定时器的基本功能,包括开启和关闭,同时也提供了一个简单的用户界面,方便...

    C# Winform线程创建子窗体

    线程允许程序同时执行多个任务,提高应用的响应性和效率。本话题将深入探讨如何利用线程来延迟创建子窗体,并且如何安全地跨线程控制主窗体的控件。 首先,我们来理解什么是Winform和线程。Winform是.NET Framework...

    VB Winsock多线程

    VB Winsock多线程是Visual Basic(VB)编程中实现网络通信的一种技术,它结合了Winsock控件和多线程编程,以提高程序的并发处理能力。在VB中,Winsock控件允许开发者创建TCP/IP协议的应用程序,用于网络上的数据传输...

    C#-正确结束线程-通过给定信号结束线程.rar

    我们可以使用这些信号来控制线程的执行流程,当主线程发送关闭信号时,工作线程检查到信号,便知道应当结束。 3. ** CancellationToken 和 CancellationTokenSource:** .NET 4.0引入了`CancellationToken`和`...

    c++与Qt实现把定时器放进子线程中运行

    6. 记得在不再需要QThread时,正确地关闭和销毁线程,防止内存泄漏。 在样例代码"TimerThread"中,可能包含了以上步骤的实现。它展示了如何创建一个子线程,将QTimer移动到子线程,并确保定时器触发的槽函数也在...

    c# 实现多窗口间线程控制

    总结来说,实现“C# 实现多窗口间线程控制”涉及的知识点包括线程的创建和管理、UI线程安全、窗口通信、事件驱动编程、异步编程等。在实际项目中,需要结合具体需求灵活运用这些技术,确保程序的稳定性和用户体验。

    易语言多线程下载源码

    8. **多任务调度**:在易语言中,可以通过事件驱动的方式管理多个线程,例如,每当一个线程完成下载一部分文件后,触发一个事件,主线程接收到事件后,启动下一个线程继续下载。 通过理解以上知识点,并结合提供的...

    Qt中在子线程中调用定时器

    由于定时器的信号和子线程中的槽函数要在不同的线程中触发,所以我们需要使用`Qt::QueuedConnection`连接类型,这样信号会在接收方线程的事件循环中被处理。 ```cpp connect(timer, &QTimer::timeout, this, &...

    C#利用单线程做进度条

    总结起来,C#利用单线程做进度条的关键在于合理地划分工作在后台线程和UI线程之间,通过委托和事件机制实现两者之间的通信。这样既能保证耗时任务的执行不会阻塞用户界面,又能及时更新进度条,提供良好的用户体验。...

    Qt 线程串口读写串口数据

    在这个文件中,通常会包含串口的打开、关闭、设置参数、读取和写入数据等函数。例如,我们可以使用`QSerialPort`类来创建一个串口对象,通过`open()`函数打开串口,`setBaudRate()`、`setDataBits()`、`setParity()`...

    Java多线程端口快速扫描

    - 启动线程:调用Thread对象的`start()`方法,这将触发`run()`方法的执行。 2. **并发控制** - `synchronized`关键字:在多线程环境下,可能需要确保某些代码块在同一时间只被一个线程执行,以防止数据竞争。在...

    线程钩子注入例子

    同时,如果不再需要与目标进程交互,我们也应该关闭进程和线程句柄。 需要注意的是,线程钩子注入技术虽然强大,但也可能被滥用,比如进行恶意软件活动。因此,正确和负责任地使用这种技术是非常重要的。此外,由于...

Global site tag (gtag.js) - Google Analytics