首页 > 其他分享 >前端页面Ajax控制后端线程(Thread)运行

前端页面Ajax控制后端线程(Thread)运行

时间:2022-12-13 13:11:07浏览次数:48  
标签:name Thread redisJson lstThreads 端线 Ajax 线程 th

1、后端生成线程 

JSONObject redisJson = new JSONObject();
Thread th = new Thread(
() -> {
...
while() {
...
}
...
}
);
th.start();
//以下内容为重点:需借用 redis 存储当前线程名
redisJson .put("thread_name",th.getName())
redisService.setValue(taskKey, StringUtils.toStringTrim(redisJson));
return redisJson

 

2、前端调用Ajax

JSONObject redisJson = JSONObject.parseObject(redisService.getValue("ekg:meta:zcwj:extractparagraphfile:" + taskId));
String th_name = StringUtils.toStringTrim(redisJson.get("thread"));
ThreadGroup currentGroup = Thread.currentThread().getThreadGroup();
int noThreads = currentGroup.activeCount();
Thread[] lstThreads = new Thread[noThreads];
currentGroup.enumerate(lstThreads);
System.err.println("现有线程数" + noThreads);
for (int i = 0; i < noThreads; i++) {
String nm = lstThreads[i].getName();
System.err.println("线程号:" + i + " = " + nm);
if (nm.equals(th_name)) {
System.err.println("删除线程:" + i + " = " + th_name);
lstThreads[i].interrupt();
lstThreads[i].stop();
}
}
redisService.removeKey("ekg:meta:zcwj:extractparagraphfile:" + taskId);
//循环所有线程,根据线程名称,关闭当前制定的线程







标签:name,Thread,redisJson,lstThreads,端线,Ajax,线程,th
From: https://www.cnblogs.com/Stir-friedEggplant/p/16978485.html

相关文章

  • ThreadLocal实现原理和使用场景
    ThreadLocal是线程本地变量,每个线程中都存在副本。实现原理:每个线程中都有一个ThreadLocalMap,而ThreadLocalMap中的key即是ThreadLocal。  内存泄漏:ThreadLocal......
  • 【Java】ThreadLocal 可以在指定线程内存储数据,只有指定线程可以得到存储数据
     一般事务会用到 ThreadLocal可以保障同一个线程用同一个Connection 可以参考 ThreadLocal是线程的内部存储类,可以在指定线程内存储数据。只有指定线程可以得到存储......
  • jquery .dataTables使用ajax数据源小示例
    <scripttype="text/javascript"language="javascript"src="./plugins/jquery/jquery-1.12.4.min.js"></script><scripttype="text/javascript"language="javascript......
  • <一>通过thread类编写C++多线程程序
    C++语言层面多线程=>好处:跨平台windows/linuxthread/mutex/condition_variablelock_gurad/unique_lockatomic/原子类型,基于CAS操作的原子类型线程安全的睡眠sleep_f......
  • Exception in thread "main" kafka.zookeeper.ZooKeeperClientTimeoutException: Time
    遇到问题:今天在启动kafka后创建topic时遇到如下错误:[root@localhostconfig]#kafka-topics.sh--create--zookeeper192.168.68.110:2181,192.168.68.111:2181,192.16......
  • js之ajax |12-6
    AJAX不是JavaScript的规范,它只是一个哥们“发明”的缩写:AsynchronousJavaScriptandXML,意思就是用JavaScript执行异步网络请求。如果仔细观察一个Form的提交,你就会发现,一......
  • 线程池ThreadPoolExecutor
    回顾Java创建线程的几种方式:1,继承Thread(实际Thread也是实现Runnable接口);2,实现Runnable接口;3,实现Callable接口(返回值);4,由线程池创建。 根据阿里巴巴Java开发手册,关......
  • JS AJAX跨域详解,支持get和post请求
    前述:先了解下什么是跨域,什么是同源详解跨域请求的两种方式,支持post请求JSAJAX跨域被阻止CORS头缺少'ACCESS-CONTROL-ALLOW-ORIGIN'(只要代码的看这个,其他的偏理论)JSONP实......
  • 20个超级优秀的AJAX效果
    20个超级优秀的AJAX效果,国外的,都是开源的东西,效果非常COOL,推荐之.地址:​​​http://abhilashkumar.name/20-excellent-ajax-effect-for-web-developers/​​......
  • 使webworker中支持使用import导入模块——threads.js
    threads.js基本使用使用vue-cli创建一个项目(我这里vue--version的版本是3.11.0):vuecreatehello-world添加tool.js文件:exportfunctiongetSuffix(){return......