摘要: 一、线程池 1、什么是线程池 Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序 都可以使用线程池。在开发过程中,合理地使用线程池能够带来3个好处。 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二:提高响应速度。当任务到达时,任务可以不 阅读全文
posted @ 2019-10-15 09:17 codeobj 阅读(294) 评论(0) 推荐(0) 编辑
摘要: Java中使用HttpPost上传文件以及HttpGet进行API请求(包含HttpPost上传文件) 一、HttpPost上传文件 二、HttpGet对API进行Get请求 两种方式: 使用在URL中拼接,已经进行过测试 使用URI进行参数构造的方式未进行测试 1、在URL中拼接 2、使用参数的方 阅读全文
posted @ 2019-10-14 10:27 codeobj 阅读(2689) 评论(0) 推荐(0) 编辑
摘要: 一、并发队列 在并发队列上JDK提供了两套实现, 一个是以ConcurrentLinkedQueue为代表的高性能队列非阻塞, 一个是以BlockingQueue接口为代表的阻塞队列,无论哪种都继承自Queue。 1、阻塞队列与非阻塞队 阻塞队列与普通队列的区别在于: 阻塞队列: 当队列是空的时,从 阅读全文
posted @ 2019-10-13 18:30 codeobj 阅读(2431) 评论(0) 推荐(3) 编辑
摘要: 多线程之间通讯实现(并解决线程安全问题) 这种方式的问题在于,会进行多次消费 wait、notify方法 多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的动作不同。 1. 因为涉及到对象锁,他们必须都放在synchronized中来使用. Wait、Notify一定要在synchroni 阅读全文
posted @ 2019-10-10 21:19 codeobj 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 一、什么是线程安全? 为什么有线程安全问题? 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。 案例:需求现在有100张火车票,有两个窗口同时抢火车票,请使用多线程模拟抢票效果。 代码: 运行结果: 一号窗口 阅读全文
posted @ 2019-10-07 18:07 codeobj 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 一、线程与进程区别 每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行 使用线程可以把占 阅读全文
posted @ 2019-10-06 16:09 codeobj 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 一、OOP三大基本特性 OOP 面向对象程序设计(Object Oriented Programming)作为一种新方法,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征,只能对事物特征和变化规律的一种抽象, 阅读全文
posted @ 2019-09-29 14:19 codeobj 阅读(342) 评论(0) 推荐(0) 编辑