搜索结果
查询Tags标签: 队列,共有 1737条记录-
来看看高级程序员是如何处理Java开发中常见的延时消息
前言 延时消息(定时消息)指的在 分布式异步消息场景 下,生产端发送一条消息,希望在指定延时或者指定时间点被消费端消费到,而不是立刻被消费。 延时消息适用的业务场景非常的广泛,在分布式系统环境下,延时消息的功能一般会在下沉到中间件层,通常是 MQ 中内置这个功…
2022/2/9 14:44:15 人评论 次浏览 -
关于Java线程池
转自:微点阅读 https://www.weidianyuedu.com/content/3917490780418.html前言掌握线程池是后端程序员的基本要求,相信大家求职面试过程中,几乎都会被问到有关于线程池的问题。我在网上搜集了几道经典的线程池面试题,并以此为切入点,谈谈我对线程池的理解。如果有哪…
2022/2/9 11:14:12 人评论 次浏览 -
Java并发类概述
集合 ConcurrentHashMap HashMap 1.7 底层使用的数据结构是数组+链表,链表是为了解决hash碰撞的,相同的值插入,链表的插入采用的是头插法。多线程插入会出现循环链表问题。 HashMap 1.8 底层使用的数据结构是数组+链表+红黑树,链表是为了解决hash碰撞的,链表的插入采…
2022/2/8 9:12:25 人评论 次浏览 -
Celery分布式任务队列
Celery是一款非常简单,灵活, 可靠的分布式系统, 可用于处理大量消息, 并且提供了一整套操作此系统的一系列工具 Celery是一款消息队列工具, 可用于处理实时数据以及任务调度什么是任务队列? 任务队列一般用于线程或计算机之间分配工作的一种机制 任务队列的输入是一个成为…
2022/2/8 6:12:41 人评论 次浏览 -
线程池的实现原理、优点与风险、以及4种线程池实现
为什么需要线程池 我们有两种常见的创建线程的方法,一种是继承Thread类,一种是实现Runnable的接口,Thread类其实也是实现了Runnable接口。但是我们创建这两种线程在运行结束后都会被虚拟机销毁,如果线程数量多的话,频繁的创建和销毁线程会大大浪费时间和效率,更重要…
2022/2/7 23:12:50 人评论 次浏览 -
C++STL概述1
STL基本概念容器:可容纳各种数据类型的通用数据结构,是类模板 迭代器:可用于依次存取容器的元素,类似于指针 算法:用于操作容器中的元素的函数模板sort()来对一个vector中的数据进行排序 find()来搜索一个list中的对象 算法本身与他们操作的数据的类型无关,因此它…
2022/2/7 22:44:43 人评论 次浏览 -
io调度算法
Linux 内核包含4个IO调度器,分别是 Noop IO scheduler、Anticipatory IO scheduler、Deadline IO scheduler 与 CFQ IO scheduler。anticipatory, 预期的;提早发生的;期待着的通常磁盘的读写影响是由磁头到柱面移动造成了延迟,解决这种延迟内核主要采用两种策略:缓存…
2022/2/7 20:17:13 人评论 次浏览 -
【java】【dailyStudy】Deque 双端队列
简介 Deque是一个接口,继承自Queue,实现类是LinkedList、ArrayDeque;这个两个类都提供了双端对列,而且在必要时可以增加队列的长度; 插入元素 # 在头部插入 void addFirst(E elemet); #如果队列已满会抛出IllegalStateException boolean offerFirst(E element);# 在…
2022/2/7 1:15:01 人评论 次浏览 -
redis做缓存在电商项目中的使用
缓存+数据库读写的模式(https://www.cnblogs.com/zk-blog/p/12364840.html)(1)读的时候,先读缓存,缓存没有的话,就读数据库,然后取出数据后放入缓存,同时返回响应。 (2)更新的时候,先更新数据库,然后再删除缓存。 为什么上亿流量高并发场景下,缓存会出现这个…
2022/2/6 19:13:55 人评论 次浏览 -
如何在Java中实现高效的去重优先队列
背景 在Apahce IoTDB中,查询最后需要根据时间戳列做join,而这一步操作是通过一个带有自动去重功能的优先队列实现的。之前的实现中,我们采用了Java自带的TreeSet,但是发现了如下的问题之后,自己实现了一个高效的去重优先队列。 Java语言库中自带了PriorityQueue作为默…
2022/2/6 14:13:14 人评论 次浏览 -
C++ 二叉树的层次建树及其遍历
总结归纳 先序遍历:根左右;中序遍历:左根右;后序遍历:左右根。若选取层次建树,则需要一个链式队列辅助实现 (规定,不必问为什么) 。该辅助队列的具体操作流程(重点理解): 队列结点的数据域 p 存放的是树结点的地址 ( BiTNode *p 类型 ) ,头指针 phead 指向该队…
2022/2/6 12:13:01 人评论 次浏览 -
[半监督学习] AggMatch: Aggregating Pseudo Labels for Semi-Supervised Learning
受立体匹配(Stereo Matching)中代价聚合(cost aggregation)和 Transformers中 self-attention 的启发, 提出一个聚合模块, 它通过考虑实例之间的相似性来聚合标记和未标记数据的初始伪标签. 为了扩大当前 mini-batch之外的聚合候选者, 利用一个队列来记忆训练期间先前 bat…
2022/2/6 6:15:21 人评论 次浏览 -
在库存服务中实现缓存与数据库双写一致性保障方案(一)
库存服务和数据库双写一致性方案 库存服务架子搭起来了,访问数据都是ok的,解决方案都分析过了。我们需要把思路进行代码实现。1.系统启动的时候初始化线程池和相关内存队列。2.两种请求对象的封装,1种发生交易进行库存更新,2是读库存可能在商品页面读的时候先读缓存,…
2022/2/5 19:14:40 人评论 次浏览 -
【Python】队列的初识
依旧先是队列的原理代码: class Queue:def __init__(self):self.items = []def isEmpty(self): # 检查队列是否为空。无需参数,且返回一个布尔值return self.items == []def enqueue(self, item): # 将一个元素添加到队列的尾部。需要一个参数item,且无返回值self.it…
2022/2/5 17:14:07 人评论 次浏览 -
算法训练营 训练 黑盒子(优先队列)
优先队列:priority_queue priority_queue是一个优先队列,优先级高的最先出队,默认最大值优先。内部实现为堆,因此出队和入队的时间复杂度均为O(logn)O(logn)O(logn)。可以自定义优先级控制出队顺序,如果是数值,则也可以采用加负号的方式实现最小值优先,优先队列不支…
2022/2/5 17:12:43 人评论 次浏览