约 292 字小于 1 分钟
多线程(Multithreading)
面试题1:什么是线程?线程和进程有什么区别?
答:线程是程序执行的最小单位,一个进程可以包含多个线程。线程和进程的区别在于进程是操作系统分配资源的最小单位,而线程是CPU调度的最小单位。
面试题2:Java中如何创建线程?有哪些方式?
答:Java中创建线程有以下几种方式:
- 继承Thread类,重写run()方法。
- 实现Runnable接口,重写run()方法。
- 使用匿名内部类创建线程。
- 使用线程池创建线程。
面试题3:什么是线程安全?如何保证线程安全?
答:线程安全是指多个线程同时访问一个共享的资源时,不会出现数据不一致或者其他异常的情况。保证线程安全的方式有以下几种:
- 使用synchronized关键字同步代码块或方法。
- 使用Lock接口和ReentrantLock类实现同步。
- 使用volatile关键字保证变量的可见性。
- 使用Atomic包中的类保证原子性操作。