1.什么是线程?
一个程序是由多个进程组成的,一个进程又是由若干个线程组成,线程可以看做程序执行的基本单位。
2.线程创建的两种方式
继承Thread类,实现Runnable接口。
查看源码我们可以看出来继承Thread类,实际也是实现Runnable接口。这两种方法都需要覆盖run方法并且通过start方法来启动线程,区别在于Thread类提供了更多的线程方法,比如sleep,wait,notify等等,但是因为Java是属于单继承的继承Thread类无法继承其他类,通过实现Runnable接口则不会。另外一点重要的是,实现Runnable接口可以共享实例资源。
3.什么是并发?
并发是指同一时间段多个进程对同一个程序进行访问。
4.什么是互斥?
线程之间对资源的访问出现相互排斥的情况。
5.什么是同步?
步调一致一个接一个的访问同一资源。
6.什么是异步?
各干各的,相互之间没有影响。
一个程序是由多个进程组成的,一个进程又是由若干个线程组成,线程可以看做程序执行的基本单位。
2.线程创建的两种方式
继承Thread类,实现Runnable接口。
查看源码我们可以看出来继承Thread类,实际也是实现Runnable接口。这两种方法都需要覆盖run方法并且通过start方法来启动线程,区别在于Thread类提供了更多的线程方法,比如sleep,wait,notify等等,但是因为Java是属于单继承的继承Thread类无法继承其他类,通过实现Runnable接口则不会。另外一点重要的是,实现Runnable接口可以共享实例资源。
3.什么是并发?
并发是指同一时间段多个进程对同一个程序进行访问。
4.什么是互斥?
线程之间对资源的访问出现相互排斥的情况。
5.什么是同步?
步调一致一个接一个的访问同一资源。
6.什么是异步?
各干各的,相互之间没有影响。