// 请求直接交给线程池来处理
public void push(PushParam pushParam) {
try {
pushServiceThreadExecutor.submit(() -> {
handler(pushParam);
});
} catch (Exception e) {
logger.error("pushServiceThreadExecutor error, exception{}:", e);
}
}
public class UnsafeCountingServlet extends GenericServlet implements Servlet {
private long count = 0;
public long getCount() {
return count;
}
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
++count;
// To something else...
}
}
文章以纯面试的角度去讲解,所以有很多的细节是未铺垫的。
文章中写到的处理线程安全的思路每一项技术都可以写出一篇文章,AQS、Synchronized、Atomic...周末肝起来!下周再来给大家安排!
鉴于很多同学反馈没看懂【对线面试官】系列,基础相关的知识我确实写过文章讲解过啦,但有的同学就是不爱去翻。
为了让大家有更好的体验,我把基础文章也找出来(重要的知识点我还整理过电子书,比如说像多线程、集合这种面试必考的早就已经转成PDF格式啦)
我把这些上传到网盘,你们有需要直接下载就好了。
欢迎关注我的微信公众号【Java3y】来聊聊Java面试
【对线面试官】系列 一周两篇持续更新中!