返回顶部
摘要: 一、多线程模型一:生产者消费者模型 (1)模型图:(从网上找的图,清晰明了) (2)生产者消费者模型原理说明: 这个模型核心是围绕着一个“仓库”的概念,生产者消费者都是围绕着:“仓库”来进行操作,一个仓库同时只能被一个生产者线程或一个消费者线程所操作,synchronized锁住的也是这个仓库,仓库 阅读全文
posted @ 2018-04-26 21:43 小风微灵-彦 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 一、本案例设计到的知识点 (1)Object的notify(),notifyAll(),wait()等方法 (2)Thread的sleep(),interrupt()。 (3)如何终止线程。 (4)如何控制多个线程之间按顺序执行。 二、一个电梯的上下运送人员的案例 引用生活中的一个情景,(先从最简单 阅读全文
posted @ 2018-04-26 16:48 小风微灵-彦 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 一、提出疑惑 上一篇文章中,分析了synchronized关键字的用法。但是好像遗漏了一种情况。 那就是: synchronized(obj){/*同步块代码*/} 一般有以下几种情况: (1)synchronized(this){/*同步块代码*/}: synchronized锁住的是this,而 阅读全文
posted @ 2018-04-24 16:43 小风微灵-彦 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 一、线程同步1、synchronized关键字的作用域有二种:(1)某个对象实例内:synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有多个synchronized方法,只要一个线程访问了其中一个synchronized方法, 阅读全文
posted @ 2018-04-23 22:18 小风微灵-彦 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 一、一个自定义的表格 这个js是我刚工作的时候,我们老大让我做一个功能,我觉得html自带的table功能单一,没有分页和排序功能,所有就尝试着做一下,所以这个东西就出来了。很久没写博客了,贴出来吧,避免以后丢失。 先看看做出来是什么样子吧!(侧重于功能,样式没有怎么用心调整哈) 走的是ajax请求 阅读全文
posted @ 2018-04-23 18:04 小风微灵-彦 阅读(865) 评论(0) 推荐(0) 编辑
摘要: 一、一个简单的js方法实现集合拷贝 做web项目的时候,少不了和js中的数组,集合等对象接触,那么你肯定会发现,在js中存在一个怪异的现象就是数组和集合的拷贝都是地址复制,并不是简单的数据的拷贝。 举个例子: 那么这个时候,集合arr1和arr2的数会发生怎么样的变化呢? 按照正常的逻辑,我们只改变 阅读全文
posted @ 2018-04-23 17:44 小风微灵-彦 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 一、纯js格式化时间 之前记录了一些,工作中发现的比较常用的使用,就记录一下。 由于很基础,就直接贴出来了,不做分析了。 改造一下Date的原型 看看如何使用吧。 看看执行的结果吧。 还是蛮好用的吧,把这段简短的js代码放置到公共的js文件中,以后直接使用就可以啦,就不用自己去转化了哈。 阅读全文
posted @ 2018-04-23 17:18 小风微灵-彦 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 主线程:JVM调用程序main()所产生的线程。 当前线程:这个是容易混淆的概念。一般指通过Thread.currentThread()来获取的进程。 后台线程:指为其他线程提供服务的线程,也称为守护线程。JVM的垃圾回收线程就是一个后台线程。用户线程和守护线程的区别在于,是否等待主线程依赖于主线程 阅读全文
posted @ 2018-04-22 13:45 小风微灵-彦 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 一、sleep()和wait()的区别共同点:1.他们都是在多线程的环境下,都可以在程序的调用出阻塞指定的毫秒,然后继续往后执行(在当前线程再次拿到cpu的执行权之后)。2.wait()和sleep()都可以通过interrupt()方法打断线程的暂停状态,从而使得线程立刻抛出InterruptEx 阅读全文
posted @ 2018-04-22 13:39 小风微灵-彦 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 一、sleep()和yield()的区别 (1)sleep()使当前线程进入停滞状态(即阻塞状态),所以执行sleep()的线程在指定的时间内不会被执行; (2)yield()只是使当前线程从运行状态转到可运行状态(即就绪状态),所以执行yield()的线程有可能进入到可执行状态之后立马又被执行。 阅读全文
posted @ 2018-04-21 17:20 小风微灵-彦 阅读(907) 评论(0) 推荐(0) 编辑
摘要: 一、常用函数的使用 (1)Thread.sleep(long millis):在指定的毫秒内让当前正在执行的线程休眠(暂停执行),休眠时不会释放当前所持有的对象的锁。(2)join():主线程等待子线程终止后才可以终止 使用方式: join()是Thread的一个方法,启动线程后可以直接调用,即jo 阅读全文
posted @ 2018-04-21 16:35 小风微灵-彦 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 一、线程调度(1)调整线程的优先级Java线程有优先级,优先级高的线程会获得较多的执行机会,但是只是抢占cpu使用权的机会增加了,并不意味着就一定先执行。Java线程的优先级用整数来表示,取值范围为:1~10 ,Thread有以下3个静态常量:static int MAX_PRIORITY线程可以具 阅读全文
posted @ 2018-04-21 16:16 小风微灵-彦 阅读(395) 评论(0) 推荐(0) 编辑
摘要: 一、线程状态转换 下面的这个图非常重要!你如果看懂了这个图,那么对于多线程的理解将会更加深刻 状态说明:(1)新建状态(New):新创建了一个线程对象。(2)就绪状态(Runnable):线程被创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行的线程池中,变得可运行,等待获取c 阅读全文
posted @ 2018-04-21 16:09 小风微灵-彦 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 很久没记录一些技术学习过程了,这周周五的时候偶尔打开“博客园”,忽然让我产生一种重拾记录学习过程的想法,记录下学习研究过程的一点一滴,我相信,慢慢地就进步了!最近想学习一下多线程高并发,但是多线程在实际工作中操刀不多,对于多线程的理解也不够深入,很多地方都存在不确定性,这让我困惑,所以决定从头开始学 阅读全文
posted @ 2018-04-21 15:47 小风微灵-彦 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 1、使用的报表工具: jfree报表 2、下载网址: http://www.jfree.org/ 下载之后先解压:如下图 下载后:需要的jar包!如下图: 打开:找到以下的两个jar包 再导入开发项目中: 之后就可以正常使用jfree报表了: 3、jfree报表API文档: http://tool. 阅读全文
posted @ 2016-07-18 10:48 小风微灵-彦 阅读(26230) 评论(1) 推荐(1) 编辑
加载中……