• JavaSE习题 第八章 线程


    问答题

    1.线程和进程是什么关系?

      进程是程序的一次动态执行,对应了从代码加载,执行至执行完毕的一个完整的过程

      线程是比进程更小的执行单位,一个进程在其执行过程中可以产生多个线程,形成多条执行线索

    2.线程有几种状态?

      4种,新建,运行,中断,死亡

    3.引起线程中断的常见原因是什么?

      1.执行了sleep

      2.执行了wait

      3.cpu资源切换给其他线程

      4.进入阻塞状态

    4.一个线程执行完run方法后进行了什么状态?该线程还能调用start方法吗?

      死亡状态,不能

    5.线程在什么状态,调用isAlive返回false

      死亡状态

    6.线程调用interrupt作用是什么?

      吵醒休眠的线程

    7.将第8-11中的synchronized去掉,重新编译,观察运行结果

      会出现重复

    8.wait(),notify(),notifyAll()的作用

      使线程进入挂起状态(sleep的时间不确定)

      唤醒一个挂起状态的线程

      唤醒所有挂起状态的线程

    9.TicketSeller中的循环条件while(fiveNumber<1)换成if(fiveNumber<1)可行嘛

      不可行,while会循环,if只能判断1次,可能会进行连续等待状态

    10.TicketSeller类中出现的 wait改成sleep(2000)重新编译,观察运行结果

    11.什么叫守护线程?

    thread.setDaemon(true),则该线程为非守护线程

    守护线程是在其他线程都运行完毕后立即中断,那么,该线程为守护线程(守护线程不稳定)

    作业题

    1.上机调试8-1观察结果是否相同

    package cn.littlepage.game;
    
    public class Test2 {
        public static void main(String[] args) {
            WriteWordThread zhang, wang;
            zhang = new WriteWordThread("");
            wang = new WriteWordThread("");
            zhang.start();
            for (int i = 0; i <= 80; i++) {
                System.out.println("我是主线程的语句");
            }
            wang.start();
    
        }
    }
    
    class WriteWordThread extends Thread {
        WriteWordThread(String s) {
            setName(s);
        }
    
        public void run() {
            for (int i = 1; i <= 80; i++) {
                System.out.println("我是一个线程,名字是" + getName());
            }
        }
    }

    不相同

    2.上机调试8-2,编写3个线程,分别在命令行窗口输出信息//和第一题差不多

    3.模仿8-4,编写3个线程,使他们有更多的共享单元//使用implements runnable和第一题差不多,共享单元是new Thread(传进同一个Thread的子类)

    4.模仿8-12,编写5个人同时买票,并规定卖票规则和排队顺序  

  • 相关阅读:
    django2.2/mysql ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3
    orm练习题
    url的匹配问题
    集成抽象类后出现的问题
    迅为IMX6Q开发板上移植mplayer
    迅为i.MX6ULL开发板原理图分析介绍
    性价比高又能较好的学习嵌入式ARM+Linux的开发板
    适合初学者的linux开发板
    IMX6ULL开发板
    i.MX6ULL开发板终结者资料介绍
  • 原文地址:https://www.cnblogs.com/littlepage/p/9902993.html
Copyright © 2020-2023  润新知