wr456wr 2022-07-26 17:22 采纳率: 100%
浏览 36
已结题

在一个线程中使用logback占位符打印信息出现程序无故终止

大致问题描述: 在一个线程中使用logback占位符打印信息出现程序无故终止

具体问题描述:

在测试单元中,也就是一个测试方法,新建一个线程然后使用logback打印简单的输出语句正常,但是使用占位符会出现程序上的正常停止。,但是在main方法内没有任何问题

测试的代码:

package test;

import lombok.extern.slf4j.Slf4j;
import org.junit.Test;

import java.util.concurrent.locks.LockSupport;

import static java.lang.Thread.sleep;

@Slf4j(topic = "Test1.class")
public class Test1 {

    @Test
    public void test1() {
        log.info("start test1");
        Thread t1 = new Thread(() -> {
            log.info("parking");
            log.info("unpark");
            log.info("------------");
            log.info("inturper status {}", "[hei]");
            log.info("------------");
            log.info("dadadadada");
        }, "t1");
        t1.start();
    }
    
    public static void main(String[] args) throws InterruptedException {
                log.info("start test1");
        Thread t1 = new Thread(() -> {
            log.info("parking");
            log.info("unpark");
            log.info("------------");
            log.info("inturper status {}", "[hei]");
            log.info("------------");
            log.info("dadadadada");
        }, "t1");
        t1.start();
    }
}

测试结果

在test1方法的运行结果:

img

mian方法内的运行结果:

img

  • 写回答

2条回答 默认 最新

  • 郭老师的小迷弟雅思莫了 Java领域新星创作者 2022-07-26 17:56
    关注

    你可以看看这个https://blog.csdn.net/forthefuture_/article/details/108346216
    单元测试好像测试多线程好像就是有点问题。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 於黾 2022-07-26 17:30
    关注

    你的main方法里面也是启动线程呀
    这跟线程压根就没有关系
    再说了,这就是一排减号,哪里有占位符
    你的test1哪里有调用了
    把你异常的代码发出来看,不要发不出问题的代码

    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月3日
  • 已采纳回答 7月26日
  • 创建了问题 7月26日

悬赏问题

  • ¥15 求制作一个个人网页,
  • ¥15 寻涂色内存脚本作者有项目有市场有资源.却技术
  • ¥15 蓝桥杯c51单片机问题
  • ¥15 ajax跨域问题请求修改代码
  • ¥15 python matplotlib
  • ¥15 短信测压+语音,有偿,必须用Python
  • ¥20 COCOS2DX的protobuf协议注册函数问题
  • ¥15 (标签-Pytorch|关键词-Stream)
  • ¥15 求深圳2019年开放数据应用创新大赛的营运车辆数据!
  • ¥15 软件UI界面绘制折线图