博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java如何模拟一百个线程同时执行(CountDownLatch,CyclicBarrier)
阅读量:3927 次
发布时间:2019-05-23

本文共 25381 字,大约阅读时间需要 84 分钟。

Java如何模拟一百个线程同时执行

对并发测试,在平常开发过程中并不容易在现。但是借助CountDownLatchCyclicBarrier

可可以让线程同时等待同一个状态,在多核多线程的pc还是能大概的模拟出来,但是其实从真正意义上来说,并不是完全同时执行,cpu的资源是通过时间片轮转法进行调度。

上代码

CountDownLatch模拟多线程

@Test    void testCountDownLatch(){
//等待100个线程同时执行 CountDownLatch countDownLatch = new CountDownLatch(100); for(int i=0;i<100;i++){
Thread thread = new MyThread(countDownLatch); thread.start(); countDownLatch.countDown(); } } static class MyThread extends Thread{
final static Logger logger = LoggerFactory.getLogger(MyThread.class); private CountDownLatch countDownLatch; public MyThread(CountDownLatch countDownLatch) {
this.countDownLatch = countDownLatch; } @Override public void run() {
super.run(); try {
countDownLatch.await(); logger.debug("count:{},id:{}", countDownLatch.getCount(),SyncId.getId()); } catch (InterruptedException e) {
e.printStackTrace(); } } }

结果

2020-09-27 21:33:11.784 DEBUG 18864 --- [       Thread-9] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:372020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-16] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:202020-09-27 21:33:11.785 DEBUG 18864 --- [      Thread-62] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:632020-09-27 21:33:11.785 DEBUG 18864 --- [      Thread-59] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:602020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-34] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:192020-09-27 21:33:11.785 DEBUG 18864 --- [      Thread-61] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:622020-09-27 21:33:11.784 DEBUG 18864 --- [       Thread-4] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:532020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-38] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:272020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-21] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:52020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-53] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:542020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-37] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:252020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-33] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:182020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-22] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:32020-09-27 21:33:11.786 DEBUG 18864 --- [      Thread-63] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:642020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-27] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:12020-09-27 21:33:11.784 DEBUG 18864 --- [       Thread-5] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:512020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-17] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:172020-09-27 21:33:11.785 DEBUG 18864 --- [      Thread-60] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:612020-09-27 21:33:11.786 DEBUG 18864 --- [      Thread-64] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:652020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-25] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:152020-09-27 21:33:11.786 DEBUG 18864 --- [      Thread-65] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:662020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-51] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:502020-09-27 21:33:11.786 DEBUG 18864 --- [      Thread-66] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:672020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-35] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:212020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-50] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:492020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-29] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:62020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-13] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:292020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-12] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:262020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-24] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:132020-09-27 21:33:11.787 DEBUG 18864 --- [      Thread-67] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:682020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-39] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:282020-09-27 21:33:11.785 DEBUG 18864 --- [      Thread-57] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:582020-09-27 21:33:11.787 DEBUG 18864 --- [      Thread-68] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:692020-09-27 21:33:11.788 DEBUG 18864 --- [      Thread-70] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:712020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-40] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:302020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-52] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:522020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-31] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:112020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-36] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:242020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-49] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:472020-09-27 21:33:11.788 DEBUG 18864 --- [      Thread-69] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:702020-09-27 21:33:11.784 DEBUG 18864 --- [     Thread-100] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:482020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-28] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:42020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-26] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:102020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-15] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:222020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-14] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:232020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-19] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:122020-09-27 21:33:11.789 DEBUG 18864 --- [      Thread-72] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:732020-09-27 21:33:11.788 DEBUG 18864 --- [      Thread-71] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:722020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-11] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:322020-09-27 21:33:11.789 DEBUG 18864 --- [      Thread-73] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:742020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-30] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:82020-09-27 21:33:11.789 DEBUG 18864 --- [      Thread-75] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:762020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-48] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:462020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-23] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:72020-09-27 21:33:11.783 DEBUG 18864 --- [      Thread-20] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:92020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-55] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:562020-09-27 21:33:11.790 DEBUG 18864 --- [      Thread-76] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:772020-09-27 21:33:11.784 DEBUG 18864 --- [       Thread-3] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:442020-09-27 21:33:11.790 DEBUG 18864 --- [      Thread-77] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:782020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-54] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:552020-09-27 21:33:11.790 DEBUG 18864 --- [      Thread-78] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:792020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-47] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:432020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-18] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:142020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-41] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:312020-09-27 21:33:11.791 DEBUG 18864 --- [      Thread-80] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:812020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-42] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:332020-09-27 21:33:11.785 DEBUG 18864 --- [      Thread-58] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:592020-09-27 21:33:11.791 DEBUG 18864 --- [      Thread-86] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:872020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-32] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:162020-09-27 21:33:11.791 DEBUG 18864 --- [      Thread-85] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:862020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-44] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:382020-09-27 21:33:11.791 DEBUG 18864 --- [      Thread-84] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:852020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-45] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:402020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-43] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:362020-09-27 21:33:11.791 DEBUG 18864 --- [      Thread-83] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:842020-09-27 21:33:11.784 DEBUG 18864 --- [       Thread-8] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:392020-09-27 21:33:11.792 DEBUG 18864 --- [      Thread-88] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:892020-09-27 21:33:11.792 DEBUG 18864 --- [      Thread-89] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:902020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-46] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:412020-09-27 21:33:11.792 DEBUG 18864 --- [      Thread-90] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:912020-09-27 21:33:11.792 DEBUG 18864 --- [      Thread-91] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:922020-09-27 21:33:11.784 DEBUG 18864 --- [       Thread-7] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:422020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-92] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:932020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-95] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:962020-09-27 21:33:11.791 DEBUG 18864 --- [      Thread-82] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:832020-09-27 21:33:11.791 DEBUG 18864 --- [      Thread-81] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:822020-09-27 21:33:11.784 DEBUG 18864 --- [     Thread-101] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:352020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-96] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:972020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-98] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:992020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-99] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:1002020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-10] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:342020-09-27 21:33:11.790 DEBUG 18864 --- [      Thread-79] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:802020-09-27 21:33:11.783 DEBUG 18864 --- [       Thread-2] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:22020-09-27 21:33:11.784 DEBUG 18864 --- [      Thread-56] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:572020-09-27 21:33:11.789 DEBUG 18864 --- [      Thread-74] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:752020-09-27 21:33:11.784 DEBUG 18864 --- [       Thread-6] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:452020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-97] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:982020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-93] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:942020-09-27 21:33:11.793 DEBUG 18864 --- [      Thread-94] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:952020-09-27 21:33:11.792 DEBUG 18864 --- [      Thread-87] d.m.BlogMybatisApplicationTests$MyThread : count:0,id:88

783-793 将近10ms这100线程才都执行完

CyclicBarrier模拟多线程

@Test    void test01(){
CyclicBarrier cyclicBarrier = new CyclicBarrier(100); for(int i=0;i<100;i++){
Thread thread = new MyThread01(cyclicBarrier); thread.start(); } } static class MyThread01 extends Thread{
final static Logger logger = LoggerFactory.getLogger(MyThread01.class); private CyclicBarrier cyclicBarrier; public MyThread01(CyclicBarrier cyclicBarrier) {
this.cyclicBarrier = cyclicBarrier; } @Override public void run() {
super.run(); try {
cyclicBarrier.await(); logger.debug("numberWait:{},id:{}", cyclicBarrier.getNumberWaiting(),SyncId.getId()); } catch (InterruptedException | BrokenBarrierException e) {
e.printStackTrace(); } } }

结果

2020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-21] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:222020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-44] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:272020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-49] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:382020-09-27 21:43:07.376 DEBUG 17092 --- [      Thread-70] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:702020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-58] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:552020-09-27 21:43:07.375 DEBUG 17092 --- [       Thread-5] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:542020-09-27 21:43:07.376 DEBUG 17092 --- [      Thread-71] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:712020-09-27 21:43:07.376 DEBUG 17092 --- [      Thread-69] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:692020-09-27 21:43:07.376 DEBUG 17092 --- [      Thread-68] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:682020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-48] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:362020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-43] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:252020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-19] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:262020-09-27 21:43:07.375 DEBUG 17092 --- [       Thread-6] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:522020-09-27 21:43:07.377 DEBUG 17092 --- [      Thread-73] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:732020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-57] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:532020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-11] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:412020-09-27 21:43:07.375 DEBUG 17092 --- [       Thread-4] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:602020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-18] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:282020-09-27 21:43:07.377 DEBUG 17092 --- [      Thread-74] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:742020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-42] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:232020-09-27 21:43:07.376 DEBUG 17092 --- [      Thread-67] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:672020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-62] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:622020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-51] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:422020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-52] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:442020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-22] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:212020-09-27 21:43:07.378 DEBUG 17092 --- [      Thread-76] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:762020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-56] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:512020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-17] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:302020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-45] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:292020-09-27 21:43:07.378 DEBUG 17092 --- [      Thread-77] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:772020-09-27 21:43:07.375 DEBUG 17092 --- [       Thread-7] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:452020-09-27 21:43:07.378 DEBUG 17092 --- [      Thread-78] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:782020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-23] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:202020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-31] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:92020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-66] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:662020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-16] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:312020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-55] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:502020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-41] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:192020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-10] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:432020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-59] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:562020-09-27 21:43:07.375 DEBUG 17092 --- [       Thread-8] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:482020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-54] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:492020-09-27 21:43:07.379 DEBUG 17092 --- [      Thread-80] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:802020-09-27 21:43:07.375 DEBUG 17092 --- [       Thread-9] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:472020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-35] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:12020-09-27 21:43:07.377 DEBUG 17092 --- [      Thread-75] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:752020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-40] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:172020-09-27 21:43:07.379 DEBUG 17092 --- [      Thread-82] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:822020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-64] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:642020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-24] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:182020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-20] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:242020-09-27 21:43:07.380 DEBUG 17092 --- [      Thread-83] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:832020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-15] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:322020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-25] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:162020-09-27 21:43:07.380 DEBUG 17092 --- [      Thread-84] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:842020-09-27 21:43:07.380 DEBUG 17092 --- [      Thread-85] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:852020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-60] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:582020-09-27 21:43:07.380 DEBUG 17092 --- [      Thread-86] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:862020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-63] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:632020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-14] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:342020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-53] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:462020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-39] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:152020-09-27 21:43:07.374 DEBUG 17092 --- [       Thread-3] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:32020-09-27 21:43:07.375 DEBUG 17092 --- [     Thread-101] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:592020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-13] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:372020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-46] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:332020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-50] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:402020-09-27 21:43:07.381 DEBUG 17092 --- [      Thread-87] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:872020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-36] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:22020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-47] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:352020-09-27 21:43:07.381 DEBUG 17092 --- [      Thread-88] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:882020-09-27 21:43:07.381 DEBUG 17092 --- [      Thread-90] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:902020-09-27 21:43:07.377 DEBUG 17092 --- [      Thread-72] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:722020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-27] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:132020-09-27 21:43:07.381 DEBUG 17092 --- [      Thread-91] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:912020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-32] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:62020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-38] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:112020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-34] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:122020-09-27 21:43:07.382 DEBUG 17092 --- [      Thread-92] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:922020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-26] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:102020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-12] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:392020-09-27 21:43:07.382 DEBUG 17092 --- [      Thread-94] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:942020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-37] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:82020-09-27 21:43:07.382 DEBUG 17092 --- [      Thread-97] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:972020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-28] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:72020-09-27 21:43:07.382 DEBUG 17092 --- [      Thread-96] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:962020-09-27 21:43:07.382 DEBUG 17092 --- [      Thread-98] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:982020-09-27 21:43:07.382 DEBUG 17092 --- [      Thread-93] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:932020-09-27 21:43:07.381 DEBUG 17092 --- [      Thread-89] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:892020-09-27 21:43:07.383 DEBUG 17092 --- [      Thread-99] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:992020-09-27 21:43:07.375 DEBUG 17092 --- [       Thread-2] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:572020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-33] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:142020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-30] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:52020-09-27 21:43:07.379 DEBUG 17092 --- [      Thread-81] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:812020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-65] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:652020-09-27 21:43:07.378 DEBUG 17092 --- [      Thread-79] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:792020-09-27 21:43:07.375 DEBUG 17092 --- [      Thread-61] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:612020-09-27 21:43:07.383 DEBUG 17092 --- [     Thread-100] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:1002020-09-27 21:43:07.374 DEBUG 17092 --- [      Thread-29] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:42020-09-27 21:43:07.382 DEBUG 17092 --- [      Thread-95] m.BlogMybatisApplicationTests$MyThread01 : numberWait:0,id:95

374-383 近9ms

我在实验过多个机型后发现,执行快,和所能模拟的线程数应该是更cup的核数相关。核越多,所能执行的线程就越多。

转载地址:http://thugn.baihongyu.com/

你可能感兴趣的文章
统信发布UOS V20 进军个人市场 生态日益完善
查看>>
BeetleX框架详解-小结
查看>>
拥抱.NET 5,从自研微服务框架开始
查看>>
C# 中的 is 真的是越来越强大,越来越语义化
查看>>
简单理解CAP-BASE
查看>>
gRPC-微服务间通信实践
查看>>
Firefox 18周岁
查看>>
IdentityServer4系列 | 初识基础知识点
查看>>
诊断日志知多少 | DiagnosticSource 在.NET上的应用
查看>>
Chrome正在启用HTTP/3,支持IETF QUIC
查看>>
Net5 已经来临,让我来送你一个成功
查看>>
System.Text.Json中时间格式化
查看>>
怎么将SVG转成PNG(.NET工具包编写)
查看>>
为什么曾经优秀的人突然变得平庸?
查看>>
.NET 5 中的隐藏特性
查看>>
.NET5都来了,你还不知道怎么部署到linux?最全部署方案,总有一款适合你
查看>>
我画着图,FluentAPI 她自己就生成了
查看>>
BenchmarkDotNet v0.12x新增功能
查看>>
使用 .NET 5 体验大数据和机器学习
查看>>
C# 中的数字分隔符 _
查看>>