Wesley13 Wesley13
3年前
volatile实现可见性但不保证原子性
   volatile关键字:能够保证volatile变量的可见性不能保证volatile变量复合操作的原子性         volatile如何实现内存可见性:        深入来说:通过加入内存屏障和禁止重排序优化来实现的。对volatile变量执行写操作时,会在写操作后加入一条store屏
Wesley13 Wesley13
3年前
ROS 日志消息(C++)
1.日志级别日志消息分为五个不同的严重级别宏,与Android的Log定义的严重级别类似,如下基础宏:ROS_DEBUG_STREAM、ROS_INFO_STREAM、ROS_WARN_STREAM、ROS_ERROR_STREAM、ROS_FATAL_STREAM(按照严重程序级别排序,低到高)C代码:
分布式id如何生成
1.UUID生成通过网卡、时间、随机数来保证生成的唯一的字符串。优点:(1)本地生成,生成简单(2)速度快(3)高可用;缺点:(1)无序,如果存入mysq,影响B的操作性能,因为B树是需要排序的;(2)占用空间较大(36个
JDK8到JDK17有哪些吸引人的新特性?
本文主要介绍JDK8到JDk17近200个JEP中比较有价值的新特性(按照价值从高到低排序),这里有一部分特性作者也在线上环境使用过,也会将其中的使用心得分享给大家。
Stella981 Stella981
3年前
Redis 列表(List)
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)一个列表最多可以包含2321个元素(4294967295,每个列表超过40亿个元素)。实例redis127.0.0.1:6379LPUSHw3ckeyredis(integer)1
Stella981 Stella981
3年前
Spring Boot 2.0 整合 ES 5 文章内容搜索实战
本章内容文章内容搜索思路搜索内容分词搜索查询语句筛选条件分页、排序条件小结一、文章内容搜索思路上一篇讲了在怎么在 SpringBoot(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.roncoo.com%2Fcourse%2Flis
Stella981 Stella981
3年前
BlockingQueue介绍
几种类型的BlockingQueueArrayBlockingQueue:一个由数组结构组成的有界阻塞队列。LinkedBlockingQueue:一个由链表结构组成的有界阻塞队列。PriorityBlockingQueue:一个支持优先级排序的无界阻塞队列。DelayQueue:一个使用优先级队列实现的无界阻塞队列。Synchro
Wesley13 Wesley13
3年前
Mysql Using FileSort问题
阅读更多问题:明明orderby的字段建立了索引,结果还是UsingFileSort?Usingfilesort表示在索引之外,需要额外进行外部的排序动作。导致该问题的原因一般和orderby有者直接关系,一般可以通过合适的索引来减少或者避免。 explainSELECT\FROMtable\_itemWHEREuser\_
Stella981 Stella981
3年前
LeetCode 75,题目虽然简单,但你能想到最佳解法吗?
点击上方蓝字,和我一起学技术。!(https://oscimg.oschina.net/oscnet/54d143091d7ac2020f9ebb1c26e32da8020.jpg)今天是LeetCode专题的44篇文章,我们一起来看下LeetCode的75题,颜色排序SortC
Wesley13 Wesley13
3年前
Java并发编程总结(一)Syncronized解析
Syncronized解析作用:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。用法:(1)修饰普通方法(锁是当前实例对象)(2)修饰静态方法(锁是当前对象的Class对象)(3)修饰代码块(锁是Synchonized括号里配置的