什么是阻塞?什么是同步?
主要描述的是操作系统在收到程序请求IO操作后,如果IO资源没有准备好,该如何响应程序的问题: 前者不响应,直到IO资源准备好以后;后者返回一个标记(好让程序和自己知道以后的数据往哪里通知),当IO资源准备好以后,再用事件机制返回给程序。
线程的互斥同步方式有哪些? 如何比较和选择?
Java 提供了两种锁机制来控制多个线程对共享资源的互斥访问,个是 JVM 实现的 synchronized,而另一个是 JDK 实现的 ReentrantLock。 1. 锁的实现 synchronized 是 JVM 实现的,而 ReentrantLock 是 JDK 实现的。
Java IO设计上使用了什么设计模式?
FilterInputStream 属于抽象装饰者,装饰者用于装饰组件,为组件提供额外的功能。实例化一个具有缓存功能的字节流对象时,只需要在 FileInputStream 对象上再套一层 BufferedInputStream 对象即可。
线程的中断方式有哪些?
Executor 的中断操作。调用 Executor 的 shutdown() 方法会等待线程都执行完毕之后再关闭,但是如果调用的是 shutdownNow() 方法,则相当于调用每个线程的 interrupt() 方法。
什么是Docker?
Docker是一个开源的应用容器引擎,它让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到安装了任何 Linux 发行版本的机器上。