九路 九路
3年前
4.1 手写Java PriorityQueue 核心源码
本章先讲解优先级队列和二叉堆的结构。下一篇代码实现从一个需求开始假设有这样一个需求:在一个子线程中,不停的从一个队列中取出一个任务,执行这个任务,直到这个任务处理完毕,再取出下一个任务,再执行。其实和Android的Handler机制中的Looper不停的从MessageQueue中取出一个消息然后处理是一样的。不过这个需
Wesley13 Wesley13
3年前
java 线程有哪些方法
1.start()启动2.isAlive()是否活动这,只有在start之后,在run方法走完之后,是true3.state()线程状态4.getPriority() 获取线程优先级,默认是5,线程默认优先级为5,如果不手动指定,那么线程优先级具有继承性,比如线程A启动线程B,那么线程B的优先级和线程A的优先级相同5.setPrior
Wesley13 Wesley13
3年前
Java的编程逻辑
1、run()和start()的区别2、线程的基本属性和方法1.id:一个递增的整数,每创建一个线程就加一2.name3.优先级:从1到10,默认为5,会映射到系统中的优先级。数字越大,要优先级越高4.状态: NEW:还没调用start RUNABLE:正在执行run或者正在等待cup分配
Wesley13 Wesley13
3年前
DFS(深度优先遍历) 以及 BFS(广度优先遍历)
DFS(DeepFirstSearch)概念:    顾名思义,这种遍历方法是以深度为优先进行对图的搜索或者遍历,至于什么是以深度为优先条件,先看下面DFS的基本步骤:   (这是一个递归思想的DFS)    DFS:从当前节点开始,先标记当前节点,再寻找与当前节点相邻,且未标记过的节
Wesley13 Wesley13
3年前
Java多线程之线程安全队列Queue
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。注:什么叫线程安全?这个首先要明确。
Stella981 Stella981
3年前
LinkedBlockingQueue 介绍
LinkedBlockingQueue是一个基于已链接节点的、范围任意的blockingqueue。此队列按FIFO(先进先出)排序元素。队列的头部是在队列中时间最长的元素。队列的尾部是在队列中时间最短的元素。新元素插入到队列的尾部,并且队列获取操作会获得位于队列头部的元素。链接队列的吞吐量通常要高于基于数组的队列,但是在大多数并发应用程序中,其可
Stella981 Stella981
3年前
Nginx 常见问题整理
Nginx常见问题整理1、Nginx常见问题1、相同server\_name多个虚拟主机优先级访问根据文件名顺序优先读取。使用ip访问的时候,也是根据文件名顺序优先读取。2、location匹配优先级进行普通字符精
Wesley13 Wesley13
3年前
JAVA线程15
一、阻塞队列1\.概述阻塞队列是Java5线程新特征中的内容,Java定义了阻塞队列的接口java.util.concurrent.BlockingQueue。阻塞队列是一个指定长度的队列,如果队列满了,添加新元素的操作会被阻塞等待,直到有空位为止。同样,当队列为空时候,请求队列元素的操作同样会阻塞等待,直到有可用元
Stella981 Stella981
3年前
RabbitMQ —— 延迟队列
RabbitMQ实现延迟队列一:在队列上设置TTLPublishdelaysync.exchangedelay.5m.queue(延迟队列)delay.exchangetest.queue(正常队列)Consumer//延迟队列startMap<String,Object
API 小达人 API 小达人
1年前
为什么要 API 优先?
最近关于APIFirst(API优先)作为设计和开发方法的讨论很多,虽然通向APIFirst的途径有很多,但通常推动APIFirst的一般都是API架构师、API设计师和API平台负责人等,很好理解,因为他们对组织中API的效率、互操作性和质量最感兴趣。