学习线程
1.interrupt()
Thread t1 = new Thread(new somerunable());
class somerunable implements runnable()
{
public void run()
{
Thread.sleep(10000);
system.out.println("over!");
}
}
t1.start(); //由于 Thread.sleep(10000);
//t1 是阻塞状态,如果要停止sleep 用t1.interrupt(); 但是会弹出一个 异常 (interrupt 的异常)
2.join()
Thread t1 = new Thread(new somerunable());
main()
{
int n = 10;
while(n>0)
{
n--;
system.out.println(" MAIN"+n);
Thread.sleep(1000);
if(n==5)
{
t1.join();
t1.start();
}
}
}
效果是 :
MAIN9 MAIN8 MAIN7 MAIN6 MAIN5 (这里会等待到把t1的任务执行完毕,效果:等待10秒,然后由t1写出 over!) over! MAIN4 MAIN3 MAIN2 MAIN1 MAIN0
3.setDaemon()
t1.setDaemon(true);
那么t1会随着主调用者结束而结束
(一般情况下默认是false,如果调用者线程都结束了,但是t1会依然存活……)
分享到:
相关推荐
多线程学习笔记 iOS开发中,多线程是一种常见的技术手段,用于优化应用程序的性能,提升用户体验。多线程的核心是让程序能够并发地执行多个任务,合理地利用设备的计算能力,尤其是在拥有多个核心的处理器上。 ...
Java 线程学习笔记 Java 线程创建有两种方法: 1. 继承 Thread 类,重写 run 方法:通过继承 Thread 类并重写 run 方法来创建线程,这种方法可以使线程具有自己的执行逻辑。 2. 实现 Runnable 接口:通过实现 ...
这篇学习笔记将深入探讨Java多线程的核心概念、实现方式以及相关工具的使用。 一、多线程基础 1. 线程与进程:在操作系统中,进程是资源分配的基本单位,而线程是程序执行的基本单位。每个进程至少有一个主线程,...
### Java多线程学习笔记 #### 一、线程的基本概念 在计算机科学中,**线程**(Thread)是程序执行流的最小单位。一个标准的程序只能做一件事情,而通过多线程技术,可以让程序同时处理多个任务。在Java中,线程是...
【UNIX多线程学习笔记】 在UNIX操作系统中,多线程是一种重要的编程模型,它允许多个执行流在单个进程中并发运行。多线程带来了许多优势,包括提高应用程序响应速度,充分利用多CPU系统的资源,以及优化程序结构,...
这份"C++多线程学习笔记1"涵盖了基础到进阶的多线程概念,旨在帮助初学者快速掌握这一关键技能。 首先,C++11引入了对多线程的支持,引入了`<thread>`库,使得创建和管理线程变得简单。创建一个新的线程可以使用`...
java基础:多线程学习笔记
多线程 学习笔记.md
在计算机科学中,多线程是一种编程模型,允许一个应用程序同时执行多个任务。这提高了系统的效率,特别是对于处理大量并发操作的情况。以下是一些关于多线程的重要知识点,特别是关于在Linux和Windows环境下创建和...
本篇学习笔记主要涵盖了线程基础、threading模块的使用以及线程同步控制。 首先,线程是操作系统分配CPU执行时间的基本单位,一个进程可以包含多个线程。在Python3中,线程的状态主要包括新建、就绪、运行、死亡、...
java学习笔记2(多线程)java学习笔记2(多线程)
这篇文档和对应的源代码 博文链接:https://interper56-sohu-com.iteye.com/blog/172303
在多线程编程中,进程和线程是两个核心概念。进程是操作系统资源分配的基本单位,每个独立执行的程序都对应一个进程。而线程则是程序执行的最小单元,是进程内部的一条执行路径。多线程是指在一个应用程序中存在多个...
在Python编程语言中,线程是并发执行任务的基本单元,允许程序同时处理多个任务。Python标准库中的`threading`模块提供了线程相关的功能。在本文中,我们将深入探讨Python线程的基础知识,包括线程如何访问全局变量...
### Linux进程与线程创建详解 #### 进程与线程的概念 在深入探讨Linux下C语言编程中进程和线程的创建之前,我们先来理解一下进程与线程的基本概念。 - **进程**:是操作系统进行资源分配和调度的基本单位,每个...