摘要: 什么是线程安全? 为什么有线程安全问题? 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。 案例: 现在有100张火车票,有两个窗口同时抢火车票,请使用多线程模拟抢票效果。 代码运行结果是有问题的 一号窗口和 阅读全文
posted @ 2018-10-21 21:44 toov5 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入时,能对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中,每个线程都有一个私有的本地内存(local memory),本地内存中存 阅读全文
posted @ 2018-10-21 21:15 toov5 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 现代操作系统基本采用时分的形式调度运行的线程,线程分配得到的时间片的多少决定了线程使用处理器资源的多少,也对应了线程优先级这个概念。在JAVA线程中,通过一个int priority来控制优先级,范围为1-10,其中10最高,默认值为5。下面是源码(基于1.8)中关于priority的一些量和方法。 阅读全文
posted @ 2018-10-21 20:51 toov5 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 当在主线程当中执行到t1.join()方法时,就认为主线程应该把执行权让给t1 废话不多说看代码: 如果先调用join的方法在执行 启动线程 结果分别: 和 其实质就是类似于一个加入线程 join(), 当前线程暂停, 等待指定的线程执行结束后, 当前线程再继续 join(int), 可以等待指定的 阅读全文
posted @ 2018-10-21 19:57 toov5 阅读(1759) 评论(0) 推荐(0) 编辑
摘要: 多线程运行状态 线程从创建、运行到结束总是处于下面五个状态之一:新建状态、就绪状态、运行状态、阻塞状态及死亡状态。 新建状态 当用new操作符创建一个线程时, 例如new Thread(r),线程还没有开始运行,此时线程处在新建状态。 当一个线程处于新生状态时,程序还没有开始运行线程中的代码 就绪状 阅读全文
posted @ 2018-10-21 19:38 toov5 阅读(598) 评论(0) 推荐(0) 编辑
摘要: 直觉上来讲,守护线程和main相关 Java中有两种线程,一种是用户线程,另一种是守护线程。 用户线程是指用户自定义创建的线程,主线程停止,用户线程不会停止(另一条执行路径) 守护线程当进程不存在或主线程停止,守护线程也会被停止。 我们自己创建的线程叫 用户线程 如果主线程停止掉 不会影响用户线程( 阅读全文
posted @ 2018-10-21 19:37 toov5 阅读(2317) 评论(0) 推荐(0) 编辑
摘要: 线程与进程区别 每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。 使用线程可以把占据 阅读全文
posted @ 2018-10-21 16:27 toov5 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 回顾下springmvc原理图: DispatcherServlet是Spring MVC的核心,每当应用接受一个HTTP请求,由DispatcherServlet负责将请求分发给应用的其他组件。 在旧版本中,DispatcherServlet之类的servlet一般在web.xml文件中配置,该文 阅读全文
posted @ 2018-10-21 14:57 toov5 阅读(6154) 评论(0) 推荐(1) 编辑
摘要: 前面所述的https://www.cnblogs.com/toov5/p/9823728.html 中的第一条先不赘述了,就是玩了maven 重点介绍后两条 首先内置Tomcat: SpringBoot中内置tomcat服务器 Java操作创建tomcat 我们点击pom中的 持续点击到 继续点击会 阅读全文
posted @ 2018-10-21 03:38 toov5 阅读(3177) 评论(0) 推荐(0) 编辑
摘要: 框架部分重点在于实现原理,懂原理! 废话不多说,动手干起来! SpringMVC程序入口? 没有配置文件,Spring 容器是如何加载? 回顾我们之前搭建Spring Boot项目使用的pom 引入的依赖需要parent,其作用是支持依赖 快速整合框架 不需要写版本号 还有就是web组件,自动引入s 阅读全文
posted @ 2018-10-21 02:25 toov5 阅读(874) 评论(0) 推荐(0) 编辑
摘要: PageHelper 是一款好用的开源免费的 Mybatis 第三方物理分页插件 物理分页 支持常见的 12 种数据库。Oracle,MySql,MariaDB,SQLite,DB2,PostgreSQL,SqlServer 等 支持多种分页方式 支持常见的 RowBounds(PageRowBou 阅读全文
posted @ 2018-10-21 01:17 toov5 阅读(990) 评论(0) 推荐(0) 编辑
摘要: 前面https://www.cnblogs.com/toov5/p/9823353.html 说的很不好用哈哈 还需要json格式化 我们可以用Admin-UI 比较爽歪歪 原理: 将所有服务的监控中心管理存放在admin ui平台上 JSON数据放到注册中心去,用于展示。 下面我们创建如图所示的这 阅读全文
posted @ 2018-10-21 00:08 toov5 阅读(4809) 评论(0) 推荐(0) 编辑