Gobrs-Async 1.2.9-RELEASE 高性能并发编程框架

Gobrs-Async是一个高性能并发编程框架,支持超时任务和线程池配置,提供线程池隔离机制。文章介绍了如何使用@Task注解设置任务超时,以及超时监听线程池配置。此外,还讨论了线程复用的概念,展示了通过Gobrs-Async如何高效执行多任务流程。框架还支持Skywalking监控插件和全链路traceId日志插件,便于链路追踪和问题排查。

Gobrs-Async 1.2.9-RELEASE 高性能并发编程框架

前言


大家好! 元旦快乐!很高兴又和大家见面啦!在新的一年里祝大家元旦快乐 大吉大利!心想事成!平平安安!万事如意!

Gobrs-Async 又给大家带来了诸多好用、高效、实用的功能啦。新的一年用全新的开发思维去迎接全新的美好未来吧!

各位技术小伙伴们,系好安全带准备发车啦 Let's Go !!!

超时任务


顾名思义其实就是单一任务可以通过设置超时时间决定该任务是否可以继续执行。开发者在开发 IO、CPU计算任务时是非常有用的。

使用方式

使用 @Task注解中的 timeoutInMilliseconds 属性进行配置。

  • timeoutInMilliseconds 固定使用毫秒数

package com.gobrs.async.test.task.timeout;

import com.gobrs.async.core.TaskSupport;
import com.gobrs.async.core.anno.Task;
import com.gobrs.async.core.task.AsyncTask;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;

@Slf4j@Task(timeoutInMilliseconds = 300)publicclassCaseTimeoutTaskAextendsAsyncTask {
    inti=10000;

    @Overridepublicvoidprepare(Object o) {
        log.info(this.getName() + " 使用线程---" + Thread.currentThread().getName());
    }

    @SneakyThrows@Overridepublic String task(Object o, TaskSupport support) {
        System.out.println("CaseTimeoutTaskA Begin");
        Thread.sleep(400);
        for (inti1=0; i1 < i; i1++) {
            i1 += i1;
        }
        System.out.println("CaseTimeoutTaskA Finish");
        return"result";
    }
}
复制代码

超时监听线程池配置

所谓的监听线程池配置即:监听任务超时的线程池的核心线程数,关于为什么要配置该参数。请查看下方的 特别说明。

gobrs:async:config:rules:-name:"c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值