还剩4页未读,继续阅读
文本内容:
多线程一.选择题
1.下列说法中错误的一项是(A)A.线程就是程序B.线程是一个程序的单个执行流B.多线程是指一个程序的多个执行流D.多线程用于实现并发
2.下列哪个一个操作不能使线程从等待堵塞状态进入对象堵塞状态(D)A.等待阴塞状态下的线程被()唤B.等待堵塞状态下的纯种被()中断C.等待时间到D.等待堵塞状态下的线程调用()方法
3.下列哪个方法可以使线程从运行状态进入其他堵塞状态(A)A.
4.下列说法中错误的一项是(D)A.一个线程是一个类的实例B.线程从传递给纯种的实例()方法起先执行C.线程操作的数据来自实例D.新建的线程调用()方法就能立刻进入运行状态
5.下列关于类供应的线程限制方法的说法中,错误的一项是(D)A.在线程A中执行线程B的()方法,则线程A等待直到B执行完成B.线程A通过调用()方法来中断其堵塞状态C.若线程A调用方法()返回值为,则说明A正在执行中D.方法返回当前线程的引用
6.下列说法中,错误的一项是A.对象锁在0语句执行完之后由持有它的线程返还B.对象锁在语句中出现异样时由持有它的线程返还C.当持有锁的线程调用了该对象的方法时,线程将释放其持有的锁D.当持有锁的线程调用了该对象的构造方法时,线程将释放其持有的锁
7.下面的哪一个关键字通常用来对对象的加锁,从而使得对对象的访问是排他的AB CDA.二.填空题
1.在操作系统中,被称做轻型的进程是线程
2.多线程程序设计的含义是可以将一个程序任务分成几个并行的任务
3.在程序中,方法的实现有两种方式实现接口和继承类
4.多个线程并发执行时,各个线程中语句的执行依次是确定的,但是线程之间的相对执行依次是不确定的6中的对象锁是一种独占的排他锁
7.程序中可能出现一种状况多个线种相互等待对方持有的锁,而在得到对方的锁之前都不会释放自己的锁,这就是死锁
8.线程的优先级是在类的常数和之间的一个值
9.处于新建状态的线程可以运用的限制方法是()和0o
10.一个进程可以包含多个线程三.简答题
1.说明几个概念对象锁、、、、对象锁每个对象都有对象锁,当某个线程进入用定义方法时,就获得了当前类对象(方法所属的类的对象)的锁,其他线程就不能再获得该锁,直到线程释放该锁一个类对象有一个对象锁,多个同步方法公用一个对象锁是当前线程处于休眠状态,将对的限制权交给其他线程,但不释放当前对象的锁,其他线程可以获得,但不能进入当前线程限制的对象锁与的区分是,它会释放对象锁,其他线程可以进入该同步块进入当前同步块的线程调用方法变成休眠状态的线程,将该线程变成等待状态进入当前同步块的线程调用方法变成休眠状态,使全部休眠线程变成等待状态一个类中有多个同步方法,进入随意一个同步块都将获得该对象锁,由于方法使进入同步块的线程休眠,只能唤醒全部被休眠线程中的一个,可以唤醒全部休眠线程通常线程的通信通过,和条件来实现
2.中有几种方法可以实现一个线程?用什么关键字修饰同步方法?S有两种实现方法,分别是继承类与实现接口用关键字修饰同步方法
3.0和0有什么区分?答是线程类的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态照旧保持,到时后会自动复原调用不会释放对象锁是类的方法,对此对象调用方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出方法或后本线程才进入对象锁定池准备获得对象锁进入运行状态
4.同步和异步有何异同,在什么状况下分别运用他们?举例说明答假如数据将在线程间共享例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必需进行同步存取当应用程序在对象上调用了一个须要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应当运用异步编程,在很多状况下接受异步途径往往更有效率
5.启动一个线程是用()还是()?答启动一个线程是调用()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由调度并执行这并不意味着线程就会立刻运行()方法可以产生必需退出的标记来停止一个线程
6.多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?答多线程有两种实现方法,分别是继承类与实现接口同步的实现方面有两种,分别是与
7.线程的基本状态以与状态之间的关系中的线程有四种状态分别是运行、就绪、挂起、结束。