二十二章——线程与多线程的概念

1, 线程的概念
一个程序中的方法有几条执行路径, 就有几个线程

2, 线程的创建:
两种方式:
1, 继承Thread类
class TestThread extends Thread {......}
2, 实现Runnable接口, 然后作为参数传入到Thread类的构造方法中
class TestThread implements Runnable {......}

线程的启动:
调用线程类中的start()方法, 不能直接调用run()方法, 直接调用run()方法那叫方法调用, 不是启动线程

3, 线程常用方法
isAlive()
判断线程是否还活着, 调用start()之前和终止之后都是死的, 其他的都是活的
interrupt()
停止线程
getPriority()
setPriority(int i)
设置优先级, 优先级的概念: 谁的优先级高, 谁执行的时间就多
Thread里面的默认优先级:
Thread.MIN_PRIORITY = 1
Thread.MAX_PRIORITY = 10
Thread.NORM_PRIORITY = 5
Thread.sleep(1000);
将程序暂定一会
join()
合并线程
yield()
让出CPU执行其他线程

4, 线程同步
synchronized

时间: 2024-11-06 07:48:59

二十二章——线程与多线程的概念的相关文章

Welcome to Swift (苹果官方Swift文档初译与注解二十二)---148~153页(第三章--集合类型)

在数组的指定索引位置插入一个元素,可以调用数组的insert(atIndex:)方法: shoppingList.insert("Maple Syrup", atIndex: 0) // shoppingList now contains 7 items // "Maple Syrup" is now the first item in the list” 例子中的insert方法在数组的开始位置(索引为0)插入一个新的元素,元素的值是"Maple Syr

ActionScript3游戏中的图像编程(连载二十二,第2章开始)

第2章 初识图层样式与滤镜 无论是生物学家达尔文,还是哲学达人马克思,都无法准确解答“世界上先有鸡还是先有蛋”这一困扰了人类数百年的难题,但我可以百分之一百肯定地告诉大家,不管先有的是鸡还是蛋,它的创造者都一定是上帝.因为无中生有的本事,几乎都掌握在上帝的手上. 从这点上说,Photoshop和Flash都是上帝的化身,前者静得从容,后者动得洒脱,它们从不同的角度诠释着计算机时代的艺术. 您可以认为Photoshop创造了蛋,Flash创造了鸡,它们两者并不冲突. 既然如此,世界上到底是先有鸡还

企业搜索引擎开发之连接器connector(二十二)

下面来分析线程执行类,线程池ThreadPool类 对该类的理解需要对java的线程池比较熟悉 该类引用了一个内部类 /** * The lazily constructed LazyThreadPool instance. */ private LazyThreadPool lazyThreadPool; 该成员实现了单例模式,即该对象只有一个实例,属于懒汉式单例模式,当实例化该成员时,启用了线程同步机制 /** * Shut down the {@link ThreadPool}. Afte

JAVA之旅(二十二)——Map概述,子类对象特点,共性方法,keySet,entrySet,Map小练习

JAVA之旅(二十二)--Map概述,子类对象特点,共性方法,keySet,entrySet,Map小练习 继续坚持下去吧,各位骚年们! 事实上,我们的数据结构,只剩下这个Map的知识点了,平时开发中,也是能看到他的,所以还是非常值得去学习的一个知识点的,我们直接开车了 一.Map概述 泛型< k,v> 键值对,映射关系 基本特点 该集合存储键值对,是一对一对往里存,而且要保证键的唯一性 1.添加 put(key ,values) putAll() 2.删除 clear() remove(ob

【管理心得之二十二】小人物 仰视 大授权

场景再现====================Boss:小王,来我办公室一下.小王: 嗯Boss:近期总公司有会,需要到外地出差几日.我不在的这段期间里,公司大小事务你帮忙处理一下.          如果有什么难决定的事,第一时间电话.邮件联系我商定即可.小王:  明白.放心吧领导,绝不会让你失望的Boss:嗯,那就好,没事了. {小王走出办公室} 心中暗喜,"难道这就是传说中的授权,Boss不在的时候,我岂不是最高权力的行使者." ==================== 从场景

QT开发(二十二)——QMainWindow主窗口

QT开发(二十二)--QMainWindow主窗口 一.主窗口简介 应用程序中的主窗口是与用户进行长时间交互的顶层窗口,提供了应用程序的大部分功能,通常是应用程序启动后的第一个窗口,应用程序一般由一个主窗口和多个对话框组成. QT中直接支持主窗口,QMainWindow是QT中主窗口的基类,是继承于QWidget类的容器型组件. QMainWindow内部封装了菜单栏.工具栏.中心组件.停靠组件.状态栏等. QMainWindow内置了布局管理器,基本的组件布局如下: 二.菜单栏 QT中提供了预

《Programming in Lua 3》读书笔记(二十二)

日期:2014.8.6 PartⅣ The C API 26 Extending Your Application 使用Lua很重要的一点是用来做配置语言.配合主语言做一些功能的配置. 26.1 The Basics 有的时候程序需要配置一些功能信息,很多时候可能有许多别的方法比用lua做配置要更简单:如使用环境变量或者读取文件,读取文件涉及到文件的解析.如果使用Lua进行配置的话,相当于用lua文件替代了要读取的如csv.txt文件等. 使用Lua进行配置的时候,就需要使用Lua API去控制

每日算法之二十二:Swap Nodes in Pairs

Given a linked list, swap every two adjacent nodes and return its head. For example, Given 1->2->3->4, you should return the list as 2->1->4->3. Your algorithm should use only constant space. You may not modify the values in the list, on

攻城狮在路上(叁)Linux(二十二)--- linux磁盘挂载与卸载 mount umount

挂载就是将文件系统与目录结合的操作.挂载点就是目录,该目录就是进入分区或文件系统的入口. 一.挂载前的注意事项: 1.单一文件系统不应该被重复挂载在不同的挂载点中. 2.单一目录不应该重复挂载多个文件系统. 3.即将作为挂载点的目录理论上应该都是空目录才对. 注意:对应2和3,如果要挂载的目录不为空,那么挂载了新的文件系统之后,原来的目录会暂时消失(并非覆盖掉),系统会显示最新挂载的文件系统.新分区被卸载之后,原来的文件系统会重新显示出来. 二.命令介绍 mount [-t 文件系统] [-L