zoukankan      html  css  js  c++  java
  • JAVA学习日报 8.13

    上手试验了一下多线程程序,但这个与我想象中略有不同,因为for循环实际上很快,当我按照书上的函数写出这种程序时:

    class newone extends Thread {
        private int i = 0;
        public void run() {
            for (i=0;i<3;i++) {
                System.out.println("辅线程第"+(i+1)+"次循环");
            }
        }
    }
    public class Happy {
    
        public static void main(String[] args) {
            for (int i=0;i<3;i++) {
                    System.out.println("主线程第"+(i+1)+"次循环");
                    Thread first = new newone ();
               if(i==1)
                    first.start();   
                }
            }
        }

    这个的运行结果长这样:

     按理讲我在i=1时就开始了新进程,但运行结果却像是最后才生效的

    之后我将主线程循环次数改成了100.得到如下的运行结果:

     可以看到辅线程慢了主线程8拍(姑且这么说),运行速度是类似的

    后来查找了相关资料,这种现象可能是由于辅助线程开始处理要较for循环慢,如果是加载时间长一点的话,可以说两个完全是同时开始的。

    (当然我一开始真是没搞明白这个奇葩东西)

  • 相关阅读:
    IDEA快捷方式
    JVM调优总结
    log4g详细配置
    大前端完整学习路线(详解)
    Tomcat工作原理
    Oracle
    Servlet知识
    lmap
    常见博客API
    PL/SQL入门理解(一)
  • 原文地址:https://www.cnblogs.com/Sakuraba/p/13498583.html
Copyright © 2011-2022 走看看