`

多线程创建和运行---学习随笔

阅读更多
我们都知道多线程有两种创建方式:
1、通过thread子类创建,子类重写了父类中的run方法;重写run方法是为了写线程的执行内容;不重写的话调用父类的run方法,父类run方法是
public void run(){

   if(this.target!=null){

            this.target.run();
     }

}

未重写run方法的话线程将不进行任何操作

2、通过runable实现创建对象  
new Thread(new Runable(){
   //重写run方法实现线程操作逻辑
     run(){}

})


把runable对象传入thread之后thread中run()方法执行执行runable的润方法





new Thread(new Runable(){
    run()//1

}){ 
run()//2

};



程序执行分析:

由于创建线程对象时通过thread子类的方式创建  重写了run方法所以线程开始后执行2处的run方法,而runable对象处的run方法未执行,
分享到:
评论

相关推荐

    java多线程相关

    本篇将深入探讨Java多线程的相关知识,结合《java随笔杂记.doc》文档中的内容,我们将覆盖以下几个方面: 1. **线程的创建方式** - 实现`Runnable`接口:创建一个实现了`Runnable`接口的类,然后将其实例传递给`...

    Java完整随笔(学习)

    7. **多线程**:Java内置了对多线程的支持,笔记可能涵盖了Thread类、Runnable接口,同步机制(synchronized关键字、wait()、notify())以及并发工具类如ExecutorService。 8. **Java反射**:反射机制允许程序在...

    Android多线程AsyncTask详解

    本篇随笔将讲解一下Android的多线程的知识,以及如何通过AsyncTask机制来实现线程之间的通信。 一、android当中的多线程 在Android当中,当一个应用程序的组件启动的时候,并且没有其他的应用程序组件在运行时,...

    c++单例模式线程日志类

    通过运行这个示例,开发者可以了解如何配置日志等级、如何在多线程环境下安全地使用日志以及如何利用可变长参数和格式化输出功能。 总之,这个C++实现的单例模式日志类结合了多种高级特性,包括多线程支持、日志...

    C#课件 随笔

    2. 并发与异步编程:C#支持多线程和异步编程,如Task和async/await关键字,使得编写高性能并发应用变得简单。 3. 动态类型:动态类型让编译器在运行时确定变量的实际类型,增强了语言的灵活性。 4. 装箱与拆箱:...

    并发编程线程安全样例代码.zip

    在并发编程中,线程安全是一个至关重要的概念,它涉及到多线程环境下程序的正确性和稳定性。本示例代码库提供了多种并发编程的业务场景,帮助开发者深入理解如何在Java等编程语言中处理线程安全问题。以下是这些场景...

    Windows-Core-Programming:Windows核心编程随笔,原始码,电子书

    8. **多线程编程**:讨论并发和并行编程,学习如何处理线程间的竞争条件和死锁问题。 9. **系统服务**:了解如何创建和管理Windows服务,使其能够在后台长期运行。 10. **Windows API的内部工作**:通过源代码阅读...

    c#学习笔记.txt

    try-catch 语句由一个 try 块和其后所跟的一个或多个 catch 子句(为不同的异常指定处理程序)构成。try-catch 语句采用下列形式之一: try try-block catch (exception-declaration-1) catch-block-1 catch ...

    Log4j2手册阅读随笔(Log4j2新特性)

    异步记录器部分是Log4j2的一个重要新特性,它允许日志记录操作在不同的线程中异步执行,从而提高性能,尤其是在多线程和高并发的应用程序中。 “Garbage-free Logging”部分介绍了在使用Log4j2时如何避免或减少垃圾...

    2021版java高并发常问面试题

    本文将对Java高并发中常见的面试题进行总结,涵盖了守护线程和用户线程、线程与进程的区别、多线程中的上下文切换、死锁与活锁的区别、Java中的线程调度算法、线程组、Executor框架等知识点。 守护线程和用户线程 ...

    我自己的个人的编程笔记

    由于描述中提到“主要包括了自己编程平时的收集随笔”,可以推测这份笔记覆盖了多个编程领域和技术细节。 ### 2. Java线程组(ThreadGroup)的使用 #### 2.1 ThreadGroup简介 - **定义**:`ThreadGroup`是Java中用于...

    深入Java虚拟机第二版清晰版(带书签)

    5. **异常处理与多线程**:JVM如何处理异常,以及如何实现高效的多线程并发,是Java编程中不可或缺的知识。书中详细讲解了这两方面的内容。 6. **字符串与字符集**:Java对字符串的处理涉及到字符编码,书中介绍了...

    windows C++ 桌面客户端面试资料

    4. **Windows内核**:`windows用户态和内核态.docx`可能涵盖了Windows操作系统的多线程模型,用户态和内核态的概念,以及它们之间的交互,这对于理解系统级程序的运行至关重要。 5. **项目经验和未来规划**:`当...

    linux 下qt操作串口 完整工程源码

    8. **线程安全**:如果你的串口操作可能在多线程环境中进行,需要确保所有的串口操作都是线程安全的,或者使用信号和槽在合适的线程中进行操作。 在提供的源码`mycom`中,我们可以期待看到如何将这些概念应用于实际...

Global site tag (gtag.js) - Google Analytics