09_控制线程_线程睡眠sleep

【线程睡眠】

如果需要让当前正在执行的线程暂停一段时间,并进入阻塞状态,则可以通过调用Thread类的静态方法sleep()方法来实现。

sleep()方法有两种重载形式:

1.static void sleep( long millis ):让当前正在执行的线程暂停millis毫秒,并进入阻塞状态。

2.static void sleep( long millis,int nanos ):加上纳秒,很少使用该方法。

在当前线程调用sleep()方法进入阻塞状态后,在其睡眠时间段内,该线程不会获得执行机会,即使系统中没有其它可执行的线程,处于sleep()中的线程也不会执行。

所以sleep()方法常用于暂停程序的执行。

【示例代码】

较为简单,暂不演示

时间: 2024-10-29 19:06:54

09_控制线程_线程睡眠sleep的相关文章

Lock锁_线程_线程域

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading;using System.Threading.Tasks;using System.Windows.Forms; namespace Lock锁_线程_线程

10_控制线程_线程让步yield

[线程让步yield()方法] yield()方法可以让当前正在执行的线程暂停,但它不会阻塞该线程,它只是将该线程从运行状态转入就绪状态. 只是让当前的线程暂停一下,让系统的线程调度器重新调度一次. 很有可能,当某个线程调用了yield()方法暂停之后进入就绪状态,它又马上抢占了CPU的执行权,继续执行. [注意] 实际上,当某个线程调用了yield()方法暂停之后,只有优先级与当前线程相同,或者优先级比当前线程更高的处于就绪状态的线程才会获得执行的机会. [示例代码] package com.

PoEdu - Windows阶段班 【Po学校】Lesson006_线程_线程的启动到消亡 &线程状态 & 线程安全 & CONTEXT结构体 & 令牌锁

011_线程启动到死亡的详细讲解 1. 线程内核对象 使用计数 2 ##决定当前线程何时销毁 暂停计数 1 ##UINT类型初始为1,可以暂停多次,如置为0则取消暂停. 退出代码 STILL_ACTIVE Signaled FALSE CONTEXT 为空 2. 栈##在隶属于当前进程的空间中,分配一块"栈"空间,以供线程使用 参数 lpParam 入口地址 lpfnAddr 3. CONTEXT##线程上一次运行时的寄存器 IP(指令寄存器) void RtlUserThreadSt

线程_线程池

1.认识Executor接口  最顶层接口 package com.hpd.executor; import java.util.concurrent.Executor; public class T01_MyExecutor implements Executor { public static void main(String[] args) { new T01_MyExecutor().execute(()->System.out.println("helllo executor&q

第10章 线程控制(2)_线程属性和线程优先级

3. 线程属性 3.1 线程属性结构体 (1)pthread_attr_t结构体 (2)线程属性初始化和销毁 头文件 #include <pthread.h> 函数 int pthread_attr _init(pthread_attr_t* attr); //初始化 int pthread_attr_destroy(pthread_attr_t* attr); //销毁 返回值 成功返回0,否则返回错误编号 3.2 设置和获取分离属性 头文件 #include <pthread.h&g

线程基础--线程控制

3.  线程控制 1). 线程属性 目标:可以设置 线程的 detached/join 状态,线程栈的大小和最低地址等属性. detached/join 状态的区别: 当线程处于 分离状态(detached)时,线程结束时,os立即回收资源.主线程不可以调用pthread_join获取线程退出时的返回值. 当线程处于 未分离状态(join)时,线程结束时,主线程 调用pthread_join获取线程退出时的返回值, 随后释放该线程资源. a)数据类型 pthread_attr_t b)初始化及释

Linux之线程、线程控制、线程属性

一.整体大纲 二.线程相关 1. 什么是线程    LWP:light weight process 轻量级的进程,本质仍是进程(在Linux环境下) 进程:独立地址空间,拥有PCB 线程:也有PCB,但没有独立的地址空间(共享) 区别:在于是否共享地址空间. 独居(进程):合租(线程). Linux下: 线程:最小的执行单位 进程:最小分配资源单位,可看成是只有一个线程的进程. 2. Linux内核线程实现原理     (1)线程实现原理 类Unix系统中,早期是没有“线程”概念的,80年代才

多线程_创建线程_继承Thread类

public class ThreadDemo {   public static void main(String[] args){         Demo d = new Demo();   d.start();      for(int i = 0;i < 100;i++){      System.out.println("MainThread" + i);   }   } } class Demo extends Thread {   public void run(

java基础_线程

什么是线程  >>线程是每一个进程执行的顺序,该顺序是一个执行路径,或者叫做一个控制单元.      简单来说线程就是一个控制单元或者叫做一个执行路径.  >>是程序执行流的最小单位________________________________________________________________________________________________________________________________________________________