我是阿沐 我是阿沐
4年前
面试系列-4 hash应用场景分析实践
英国弗兰明曾说过一句话:“不要等待运气降临,应该去努力掌握知识。”1前言大家好,我是阿沐!你的收获便是我的喜欢,你的点赞便是对我的认可。作为一年开发经验的毕业生,在上一个章节跟面试官聊了聊redis的基础数据结构列表类型,我们凭借日常知识积累跟面试官展开了相爱相杀场景以及面试期间内心的活动状况。通过结合项目在实际场景中的运用案例和知识点的细节,稳稳的对答
Stella981 Stella981
4年前
Android OpenCV(二十二):边缘检测
边缘检测什么是图像的边缘?图像的边缘是图像最基本的特征之一。所谓边缘(或边沿)是指周围像素灰度有跳跃性变化或“屋顶”变化的那些像素的集合。边缘是图像局部强度变化最明显的地方,它主要存在于目标与目标、目标与背景、区域与区域之间,因此它是图像分割依赖的重要特征。从本质上说,图像边缘是图像局部特性不连续性(灰度突变、颜色突变、纹理结构
Stella981 Stella981
4年前
JVM堆栈
栈与堆都是Java用来在Ram中存放数据的地方。与C不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。堆内存用来存放由new创建的对象和数组。在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理。栈的优势是,存取速度比堆要快,仅次于寄存器,栈数据可以共享。但缺点是,存在栈中的数据大小与生存
Wesley13 Wesley13
4年前
VS2015+Opencv3.2配置(一次配好)
对于 VS2015QT5.8的配置我就不介绍了,由于我配置的比较早,具体有的东西忘掉了,大家可以参考下面这几篇文章。留白留白留白留白留白(稍后补)对于OpencvVS的配置是我重点要说的内容。VS2015与Opencv3.2唯一对应!(个人认为,其他版本不太好配置)VS2015与Opencv3.2唯一对应!VS2015与Ope
Wesley13 Wesley13
4年前
Java并发编程:多线程如何实现阻塞与唤醒
线程的阻塞和唤醒在多线程并发过程中是一个关键点,当线程数量达到很大的数量级时,并发可能带来很多隐蔽的问题。如何正确暂停一个线程,暂停后又如何在一个要求的时间点恢复,这些都需要仔细考虑的细节。Java为我们提供了多种API来对线程进行阻塞和唤醒操作,比如suspend与resume、sleep、wait与notify以及park与unpark等等。!(
Wesley13 Wesley13
4年前
MySQL索引那些事儿
我们都有到图书馆借书的经历,偌大的图书馆,为什么能在短的时间内找到想要找的书?如果这些书是杂乱无章的堆放,或者没有任何标识的放在书架,那么还能这么快的找到吗?这个场景就很接近我们软件开发中使用数据库的场景,图书馆的书就类似我们数据表中的数据,楼层索引牌、书架分类标识、索书号就类似我们查找数据的索引。那我们常用的数据库的索引底层的一个数据结构是什么样的呢?要了
Stella981 Stella981
4年前
Docker吐血总结
安装啥的我就不说了自己百度就行,本人是mac一路傻瓜安装。docker与vm相比的优势:1启动快,秒级别vm为分钟级2需要资源少,是轻量级的,docker容器直接与内核进行交互vm则是通过Hypervisor(VMM)与内核进行交互docker是MB级别vm为GB级别3能创建上千个容器,vm只能创建几十个4高可用性
Wesley13 Wesley13
4年前
Java 并发编程:多线程如何实现阻塞与唤醒
线程的阻塞和唤醒在多线程并发过程中是一个关键点,当线程数量达到很大的数量级时,并发可能带来很多隐蔽的问题。如何正确暂停一个线程,暂停后又如何在一个要求的时间点恢复,这些都需要仔细考虑的细节。Java为我们提供了多种API来对线程进行阻塞和唤醒操作,比如suspend与resume、sleep、wait与notify以及park与unpark等等。!(
深入跨域 - 解决方案
1前言前文《深入跨域从初识到入门》中,大家已经对同源与跨域的产生历史与重要性等有了一个初步的了解了,那么我们应该如何解决在日常开发中遇到的跨域引起的问题呢?2一览图我们将日常开发中的跨域解决方案大体分为两类:iframe跨域与API跨域:3iframe跨域
C++大型流媒体项目-从底层到应用层千万级直播系统实战【完结】
C在大型流媒体系统中的应用与优势随着互联网的飞速发展,流媒体技术已成为现代生活不可或缺的一部分,其技术复杂度和用户需求不断攀升。构建一个能够处理千万级用户的大型流媒体系统,不仅要求强大的基础设施支撑,还需深入到底层与应用层的精细设计与优化。C作为一