当前位置: 首页 > news >正文 东莞网站设计讯息竞价排名采用什么计费方式 news 2025/11/3 5:58:07 东莞网站设计讯息,竞价排名采用什么计费方式,python 菜鸟教程,vps 同时做ssh和做网站Git仓库 https://gitee.com/Lin_DH/system 介绍 同步调用#xff1a;指程序在执行时#xff0c;调用方需要等待函数调用返回结果后#xff0c;才能继续执行下一步操作#xff0c;是一种阻塞式调用。 异步调用#xff1a;指程序在执行时#xff0c;调用方在调用函数后立…Git仓库 https://gitee.com/Lin_DH/system 介绍 同步调用指程序在执行时调用方需要等待函数调用返回结果后才能继续执行下一步操作是一种阻塞式调用。 异步调用指程序在执行时调用方在调用函数后立即返回不需要等待函数调用返回结果可以直接执行下一步操作当函数执行完成后会通过回调或其他方式通知调用方得到返回结果。 回调在调用一个函数后需要在函数执行中或执行后将执行结果或状态返回给调用者。 代码实现 第一步启动类上添加 EnableAsync 注解开启异步功能。 EnableAsync SpringBootApplication public class SystemApplication extends SpringBootServletInitializer {}同步调用 第二步添加同步调用业务逻辑 注Async 注解不能修饰的 static 修饰的函数该类型的函数异步调用不会生效。 package com.lm.system.task;import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component;import java.util.Random;/*** 同步调用* author DUHAOLIN* date 2024/10/17*/ Slf4j Component public class SyncTask {public static Random random new Random();public void one() throws InterruptedException {commonTask(一);}public void two() throws InterruptedException {commonTask(二);}public void three() throws InterruptedException {commonTask(三);}public void commonTask(String s) throws InterruptedException {log.info(开始执行任务 s);long startTime System.currentTimeMillis();Thread.sleep(random.nextInt(10000));long endTime System.currentTimeMillis();log.info(完成任务 s 耗时 (endTime - startTime) 毫秒);}} 第三步测试类添加同步调用的测试方法 SystemApplicationTests.java Slf4j SpringBootTest(classes SystemApplication.class) class SystemApplicationTests {Resourceprivate SyncTask syncTask;Testpublic void syncTest() throws InterruptedException {long startTime System.currentTimeMillis();syncTask.one();syncTask.two();syncTask.three();long endTime System.currentTimeMillis();log.info(任务总耗时 (endTime - startTime) 毫秒);}}异步调用 第四步添加异步调用业务逻辑 AsyncTask.java /*** 异步调用* author DUHAOLIN* date 2024/10/17*/ Slf4j Component public class AsyncTask {public static Random random new Random();Asyncpublic void one() throws InterruptedException {commonTask(一);}Asyncpublic void two() throws InterruptedException {commonTask(二);}Asyncpublic void three() throws InterruptedException {commonTask(三);}public void commonTask(String s) throws InterruptedException {log.info(开始执行任务 s);long startTime System.currentTimeMillis();Thread.sleep(random.nextInt(10000));long endTime System.currentTimeMillis();log.info(完成任务 s 耗时 (endTime - startTime) 毫秒);}} 第五步测试类添加异步调用的测试方法 SystemApplicationTests.java Resource private AsyncTask asyncTask;Test public void asyncTest() throws InterruptedException {long startTime System.currentTimeMillis();asyncTask.one();asyncTask.two();asyncTask.three();long endTime System.currentTimeMillis();log.info(任务总耗时 (endTime - startTime) 毫秒); }异步回调常用 第六步添加异步回调业务逻辑 AsyncCallBackTask.java package com.lm.system.task;import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component;import java.util.Random;package com.lm.system.task;import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component;import java.util.Random; import java.util.concurrent.CompletableFuture;/*** 异步回调* author DUHAOLIN* date 2024/10/17*/ Slf4j Component public class AsyncCallBackTask {public static Random random new Random();Asyncpublic CompletableFutureString one() throws InterruptedException {log.info(开始执行任务一);long startTime System.currentTimeMillis();Thread.sleep(random.nextInt(10000));long endTime System.currentTimeMillis();log.info(完成任务一耗时 (endTime - startTime) 毫秒);return CompletableFuture.completedFuture(任务一执行完成);}Asyncpublic CompletableFutureString two() throws InterruptedException {log.info(开始执行任务二);long startTime System.currentTimeMillis();Thread.sleep(random.nextInt(10000));long endTime System.currentTimeMillis();log.info(完成任务二耗时 (endTime - startTime) 毫秒);return CompletableFuture.completedFuture(任务二执行完成);}Asyncpublic CompletableFutureString three() throws InterruptedException {log.info(开始执行任务三);long startTime System.currentTimeMillis();Thread.sleep(random.nextInt(10000));long endTime System.currentTimeMillis();log.info(完成任务三耗时 (endTime - startTime) 毫秒);return CompletableFuture.completedFuture(任务三执行完成);}} 第七步测试类添加异步回调的测试方法 SystemApplicationTests.java Resourceprivate AsyncCallBackTask asyncCallBackTask;Testpublic void asyncCallBackTaskTest() throws InterruptedException {long startTime System.currentTimeMillis();CompletableFutureString one asyncCallBackTask.one();CompletableFutureString two asyncCallBackTask.two();CompletableFutureString three asyncCallBackTask.three();CompletableFuture.allOf(one, two, three).join();long endTime System.currentTimeMillis();log.info(任务总耗时 (endTime - startTime) 毫秒);}效果图 同步调用 异步调用 执行完异步调用只有任务的部分相关输出任务的执行顺序也是乱序的。 异步回调 异步任务线程池配置 介绍 当我们用异步调用或异步回调进行并发操作时加速了任务的执行效率但是如果只是直接简单的创建来使用可能会碰到一些问题和风险。当接口被频繁调用异步任务创建的数量达到一定量级可能会导致内存溢出此时我们就需要对创建异步任务的操作加上线程池的相关配置。 queueCapacity缓冲队列的容量默认为INT的最大值2的31次方-1 maxSize允许的最大线程数默认为INT的最大值2的31次方-1 具体配置 application.yml spring:task:execution:pool:core-size: 2 #线程池创建时的初始化线程数默认为8max-size: 5 #线程池的最大线程数默认为int最大值queue-capacity: 10 #用来缓冲执行任务的队列默认为int最大值keep-alive: 60s #线程终止前允许保持空闲的时间默认为60sallow-core-thread-timeout: true #是否允许核心线程超时shutdown:await-termination: false #是否等待剩余任务完成后才关闭应用await-termination-period: #等待剩余任务完成的最大时间thread-name-prefix: task- #线程名的前缀设置好了之后可以方便我们在日志中查看处理任务所在的线程池application.Properties spring.task.execution.pool.core-size2 spring.task.execution.pool.max-size5 spring.task.execution.pool.queue-capacity10 spring.task.execution.pool.keep-alive60s spring.task.execution.pool.allow-core-thread-timeouttrue spring.task.execution.shutdown.await-terminationfalse spring.task.execution.shutdown.await-termination-period spring.task.execution.thread-name-prefixtask-效果图 再次执行异步回调方法得到如下效果图。 当前配置的初始化线程数为2最大线程数为5缓存队列为10只有当缓存队列满且当前线程数小于最大线程数时才会申请新的线程来执行任务如缓存队列为11初始化线程数为2最大线程数为5。 项目结构图 参考资料 Spring Boot 2.x基础教程使用Async实现异步调用【https://www.didispace.com/spring-boot-2/8-3-async-1.html】 Spring Boot 2.x基础教程配置Async异步任务的线程池【https://www.didispace.com/spring-boot-2/8-3-async-2.html】 文章转载自: http://www.morning.rkfgx.cn.gov.cn.rkfgx.cn http://www.morning.rntyn.cn.gov.cn.rntyn.cn http://www.morning.smxyw.cn.gov.cn.smxyw.cn http://www.morning.ie-comm.com.gov.cn.ie-comm.com http://www.morning.djpgc.cn.gov.cn.djpgc.cn http://www.morning.oioini.com.gov.cn.oioini.com http://www.morning.rwfp.cn.gov.cn.rwfp.cn http://www.morning.lmjtp.cn.gov.cn.lmjtp.cn http://www.morning.wqnc.cn.gov.cn.wqnc.cn http://www.morning.zybdj.cn.gov.cn.zybdj.cn http://www.morning.wsxly.cn.gov.cn.wsxly.cn http://www.morning.tlbhq.cn.gov.cn.tlbhq.cn http://www.morning.bxqtq.cn.gov.cn.bxqtq.cn http://www.morning.wtbzt.cn.gov.cn.wtbzt.cn http://www.morning.tnmmp.cn.gov.cn.tnmmp.cn http://www.morning.pakistantractors.com.gov.cn.pakistantractors.com http://www.morning.rpkg.cn.gov.cn.rpkg.cn http://www.morning.qqnp.cn.gov.cn.qqnp.cn http://www.morning.tfpqd.cn.gov.cn.tfpqd.cn http://www.morning.kxryg.cn.gov.cn.kxryg.cn http://www.morning.3jiax.cn.gov.cn.3jiax.cn http://www.morning.brwp.cn.gov.cn.brwp.cn http://www.morning.fhntj.cn.gov.cn.fhntj.cn http://www.morning.txzqf.cn.gov.cn.txzqf.cn http://www.morning.qbgdy.cn.gov.cn.qbgdy.cn http://www.morning.kgfsz.cn.gov.cn.kgfsz.cn http://www.morning.clbzy.cn.gov.cn.clbzy.cn http://www.morning.ykmkz.cn.gov.cn.ykmkz.cn http://www.morning.dlbpn.cn.gov.cn.dlbpn.cn http://www.morning.kzcz.cn.gov.cn.kzcz.cn http://www.morning.lhztj.cn.gov.cn.lhztj.cn http://www.morning.lxfyn.cn.gov.cn.lxfyn.cn http://www.morning.qbtj.cn.gov.cn.qbtj.cn http://www.morning.lqffg.cn.gov.cn.lqffg.cn http://www.morning.zmzdx.cn.gov.cn.zmzdx.cn http://www.morning.ffwrq.cn.gov.cn.ffwrq.cn http://www.morning.jtjmz.cn.gov.cn.jtjmz.cn http://www.morning.kzpy.cn.gov.cn.kzpy.cn http://www.morning.rltw.cn.gov.cn.rltw.cn http://www.morning.pqyms.cn.gov.cn.pqyms.cn http://www.morning.pmdlk.cn.gov.cn.pmdlk.cn http://www.morning.zrgsg.cn.gov.cn.zrgsg.cn http://www.morning.rcmwl.cn.gov.cn.rcmwl.cn http://www.morning.xcbnc.cn.gov.cn.xcbnc.cn http://www.morning.pzlcd.cn.gov.cn.pzlcd.cn http://www.morning.fbccx.cn.gov.cn.fbccx.cn http://www.morning.hwbmn.cn.gov.cn.hwbmn.cn http://www.morning.c7512.cn.gov.cn.c7512.cn http://www.morning.bqpgq.cn.gov.cn.bqpgq.cn http://www.morning.fxjnn.cn.gov.cn.fxjnn.cn http://www.morning.qyjqj.cn.gov.cn.qyjqj.cn http://www.morning.bwrbm.cn.gov.cn.bwrbm.cn http://www.morning.cnbdn.cn.gov.cn.cnbdn.cn http://www.morning.qftzk.cn.gov.cn.qftzk.cn http://www.morning.c7500.cn.gov.cn.c7500.cn http://www.morning.kcbml.cn.gov.cn.kcbml.cn http://www.morning.mxmzl.cn.gov.cn.mxmzl.cn http://www.morning.swimstaracademy.cn.gov.cn.swimstaracademy.cn http://www.morning.gqcsd.cn.gov.cn.gqcsd.cn http://www.morning.qnzk.cn.gov.cn.qnzk.cn http://www.morning.schwr.cn.gov.cn.schwr.cn http://www.morning.pfjbn.cn.gov.cn.pfjbn.cn http://www.morning.bxdlrcz.cn.gov.cn.bxdlrcz.cn http://www.morning.pqnpd.cn.gov.cn.pqnpd.cn http://www.morning.srbfz.cn.gov.cn.srbfz.cn http://www.morning.rtqyy.cn.gov.cn.rtqyy.cn http://www.morning.prmbn.cn.gov.cn.prmbn.cn http://www.morning.dbxss.cn.gov.cn.dbxss.cn http://www.morning.cmzcp.cn.gov.cn.cmzcp.cn http://www.morning.dpplr.cn.gov.cn.dpplr.cn http://www.morning.wgbmj.cn.gov.cn.wgbmj.cn http://www.morning.mlfmj.cn.gov.cn.mlfmj.cn http://www.morning.xqzrg.cn.gov.cn.xqzrg.cn http://www.morning.jnzfs.cn.gov.cn.jnzfs.cn http://www.morning.mszwg.cn.gov.cn.mszwg.cn http://www.morning.kpnpd.cn.gov.cn.kpnpd.cn http://www.morning.pfntr.cn.gov.cn.pfntr.cn http://www.morning.wypyl.cn.gov.cn.wypyl.cn http://www.morning.kpxnz.cn.gov.cn.kpxnz.cn http://www.morning.crkhd.cn.gov.cn.crkhd.cn 查看全文 http://www.tj-hxxt.cn/news/272944.html 相关文章: 网站后台培训学校广告设计公司招聘 好的交互设计网站cho菌主题wordpress 中山建设网站寿光shengkun网站建设 用wordpress教程视频教程站外seo是什么 logo设计网站排行榜长沙做个网站多少钱 网站开发外包合同模板用jsp做网站登录界面模板 龙岗网站建设服务开一个网站建设公司好 台州市建站公司东莞seo排名优化 网站创建流程教程开鲁企业网站建设 江山网站建设织梦教育咨询企业网站模板 北京网站建设报价明细求推荐专门做借条的网站 备份核验单时网站域名wordpress 标签 图片 alt 佛山网站建设公司点精小胡广州番禺新楼盘最新房价 网站建设类的计入什么科目打广告专用配图 第三方平台网站的建设规划wordpress相册短代码 网站平台做推广方案设计江苏高校品牌专业建设工程网站 996建站网站制作国内优秀设计网站推荐 做爰全过程教育网站asp.net建立网站 济宁城乡建设管理局网站企业网站空间购买 自己做网站seo优化jquery网站模版 网站建设 中软建个购物网站 网站 开发兰州网站排名哪家公司好 网站建设 个体经营范围中国焊接外包加工网 滕州市网站建设asp网站如何做伪静态 网站规划书 确定网站建设目的南昌网站排名优化 重庆市建设工程交易中心网站手机访问不了自己做的网站吗 做哪类视频网站需要视频证书东莞阳光网站 部门网站建设注意事项重庆给商家企业做网站 怎样建小型网站优秀交互设计网站 怎么做网站接家纺订单php大型网站设计