什么是多线程?
在一个应用程序中,同时,有多个不同的执行路径。
说一下多线程的好处?
提供程序效率。
线程和进程有什么区别?
线程是进程的一条执行路径,而进程是线程的集合。
什么是线程同步、异步?
线程同步表示,当前线程执行完后下一个线程接着执行。
线程异步表示, 在一个应用程序中,同时,有多个不同的执行路径。例如 javaweb ajax android handler
线程之间如何同步
线程之间同步使用 synchronized、wait 与 notify
什么是线程不安全?如何解决?(重点)
就是在多个线程共享同一个数据会受到其他线程的干扰。如何解决:使用线程同步技术, 用上锁(synchronized)。 让一个线程执行完了,在让另一个线程执行。
如何创建一个线程?有几种方法?
继承thread类, 重写run方法、实现Runnalbe接口,重新run方法 , 启动一个线程用start();
是使用Runnalbe接口好?还是继承Thread类好?
是实现Runnalbe接口好,因为实现的接口还可以继续继承。如果继承了Thread类不能在继承。
sleep()和 wait()有什么区别?
a、sleep是让当前线程指定休眠时间,然后继续工作 不释放锁
b、让当前线程wait则是等待,直到有线程通知notify()唤醒他才会重新工作。释放锁