Java面试笔记汇总

Java面试笔记汇总

Java面试知识点的笔记整理。

查看更多

分享到 评论

Spring MVC执行流程及工作原理

前言

本文用图文结合的方式介绍了Spring MVC执行流程及工作原理。

查看更多

分享到 评论

Java多线程学习

前言

本文主要讲了Java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的一些线程函数用法、概述等。在这之前,首先让我们来了解下在操作系统中进程和线程的区别:

  • 进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1~n个线程。(进程是资源分配的最小单位)
  • 线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。(线程是CPU调度的最小单位)
  • 线程和进程一样分为五个阶段:创建就绪运行阻塞终止
  • 多进程是指操作系统能同时运行多个任务(程序)。
  • 多线程是指在同一程序中有多个顺序流在执行。

在Java中要想实现多线程,有两种手段,一种是继承Thread类,另外一种是实现Runnable接口。(其实准确来讲,应该有三种,还有一种是实现Callable接口,并与Future、线程池结合使用。)

查看更多

分享到 评论

理解TCP三次握手与四次挥手

前言

TCP三次握手和四次挥手的问题在是最基础的问题之一。本文尝试使用动画来对这个知识点进行讲解,期望可以更加简单地地理解TCP交互的本质。

查看更多

分享到 评论

Generative Adversarial Net(GAN)

前言

GAN(生成对抗网络)最早是由2014年NIPS的一篇文章:Generative Adversarial Net 所提出来的,是近几年来深度学习领域比较热门的一块。简单来说,GAN的主要思想就是一种二人零和博弈的思想(two-player game)。本文旨在浅显地理解传统的GAN,分享一下学习心得。

查看更多

分享到 评论