公司新闻

springboot 2.3新特性?(sleep和yield的区别?)

  • 2024-01-05 13:48:53
  • 97

1.springboot 2.3有哪些新特性?

2.3.0新增功能-优雅关机

目前SpringBoot内置的四个嵌入式Web Servlet (Jetty、Reactor Netty、Tomcat和Undertow)以及响应式和基于Servlet的Web应用都支持优雅关机。

配置宽限期后,当Web服务器关闭时,它将不再允许新的请求,并将等待活动请求的宽限期完成。

演示尝试

1.创建一个新的Spring-web项目并引入SpringBoot的最新版本2.3.0.RELEASE。

& lt属国

& ltgroupid org . spring framework . boot & lt;/groupId

& ltartifactid spring-boot & lt;/artifactId

& lt版本2 . 3 . 0 . release & lt;/版本

& lt/依赖关系

优雅关机要求Tomcat的版本必须是9.0.33或以上,Spring-boot 2 . 3 . 0 . release内置的Tomcat是9.0.35,所以默认支持,不需要再考虑。

2.在application.properties中添加配置

# #打开正常关机,如果没有配置为默认的立即关机,则立即停止。

服务器关闭=正常

# #正常停机宽限期

spring . life cycle . time out-per-shut down-phase = 20秒

3.编写接口代码测试

@GetMapping(睡眠)

公共字符串睡眠(整数超时){

尝试{

log.info(开始睡眠:{},超时);

时间单位。SECONDS.sleep(超时);

log.info(结束睡眠:{},超时);

}catch(异常e){

e . printstacktrace();

}

返回睡眠:+超时;

springboot 2.3新特性?(sleep和yield的区别?)

}

蓝狮登陆开户

基本思路是上面的宽限期配置为20秒,然后我们提供一个接口自定义睡眠时间,调用接口两次,分别输入15秒和30秒的参数,请求后立即停止,观察日志输出结果。如果15秒的输入请求能成功输出并显示相应页面,30秒的输入请求会相应异常,那么优雅关机是正常的!

1.Spring Boot 2.3引入了许多新功能。2.该版本的新特性包括:支持Kotlin协调;增加了Spring云服务内网注册的实现方法;引入基于构建的缓存依赖,以支持更好的跨服务缓存;自动配置现在支持自定义条件;在执行机构中增加了关闭模块;介绍了千分尺支架。3.总的来说,Spring Boot 2.3的新特性比之前的版本更加完善,使用更加方便,给程序员带来了更好的开发体验和更大的扩展空间。

2.睡眠和产量有什么区别?

1.线程进入不同的状态。sleep方法使线程进入阻塞状态,yield方法使线程进入就绪状态。

2.是否考虑线程优先级sleep方法不会考虑线程优先级。当一个线程调用sleep方法释放CPU时,所有具有优先级的线程都将有机会获得CPU。yield方法将考虑线程优先级。当一个线程调用sleep方法释放CPU时,具有相同优先级或更高优先级的线程将有机会获得CPU。

3.便携式睡眠法比屈服法具有更好的可移植性。

Python中sleep和yield的主要区别如下:1。sleep是暂停当前线程一段时间,参数是秒。Yield就是把当前线程让给其他线程,让其他线程先执行,如果没有其他线程,就继续执行当前线程。2.sleep一般用来暂停当前线程的执行一段时间,yield用来实现协程和异步编程。3.睡眠不会放弃CPU,只是执行权,会等到时间到了再继续执行。Yield可以放弃CPU,让其他线程执行。如果其他线程没有准备好,它们将继续执行当前线程。


发表评论

提交
蓝狮

蓝狮集团自成立以来,一直秉承“创意无限,乐趣无限”的设计理念,不断推出广受玩家喜爱的游戏作品。 我们致力于挖掘游戏的潜力,不断探索各种创新的玩法和体验模式,努力为玩家带来全新的游戏体验。

网站地图

沟通蓝狮在线