Wesley13 Wesley13
3年前
ROS 日志消息(C++)
1.日志级别日志消息分为五个不同的严重级别宏,与Android的Log定义的严重级别类似,如下基础宏:ROS_DEBUG_STREAM、ROS_INFO_STREAM、ROS_WARN_STREAM、ROS_ERROR_STREAM、ROS_FATAL_STREAM(按照严重程序级别排序,低到高)C代码:
Wesley13 Wesley13
3年前
volatile实现可见性但不保证原子性
   volatile关键字:能够保证volatile变量的可见性不能保证volatile变量复合操作的原子性         volatile如何实现内存可见性:        深入来说:通过加入内存屏障和禁止重排序优化来实现的。对volatile变量执行写操作时,会在写操作后加入一条store屏
Wesley13 Wesley13
3年前
Unity3D AssetBundle的打包与加载
在Unity项目开发过程中,当要做热更新时常常使用一个叫做AssetBundle的东西,这里做一点个人的学习记录步骤1:设置打包标签:具体步骤进入Unity,选择某一资源然后看右下角,在那个地方做这个事情步骤2:打对应平台的Bundle包,这里或多或少要用到一点编辑器扩展的内容,很简单,这里就不介绍编辑器扩展的内容了。using S
Stella981 Stella981
3年前
HashMap容量分析
了解过HashMap都应该知道,HashMap内部会创建一个Entry<K,Vtable数组来存放元素,而且这个数组的长度永远都是2的指数次方。那么问题来了,为什么选择2的指数次方呢?首先,思考一下计算出hash值后,应该存放在数组的哪个位置?显然用求余(模)最简单。然而模的效率并不高,看看JDK是怎么做的,indexFor方法:st
Stella981 Stella981
3年前
Python和Ruby对比
一、异同对比选择1、python和ruby的相同点:\都强调语法简单,都具有更一般的表达方式。python是缩进,ruby是类basic的表达。都大量减少了符号。\都是动态数据类型。都是有丰富的数据结构。\都具有c语言扩展能力,都具有可移植性,比perl的可移植性更好。也都可以作为嵌入语言。\都是面向对象的语言,都可以作为
Wesley13 Wesley13
3年前
Ubuntu 16.04 安装 Docker
http://www.runoob.com/docker/ubuntudockerinstall.html1.选择国内的云服务商,这里选择阿里云为例curlsSLhttp://acspublicmirror.osscnhangzhou.aliyuncs.com/dockerengine/internet|sh2
Stella981 Stella981
3年前
Sentinel 是如何做限流的
限流是保障服务高可用的方式之一,尤其是在微服务架构中,对接口或资源进行限流可以有效地保障服务的可用性和稳定性。之前的项目中使用的限流措施主要是Guava的RateLimiter。RateLimiter是基于令牌桶流控算法,使用非常简单,但是功能相对比较少。而现在,我们有了一种新的选择,阿里提供的Sentinel。Sentinel是阿里巴巴提供
Wesley13 Wesley13
3年前
Mysql Using FileSort问题
阅读更多问题:明明orderby的字段建立了索引,结果还是UsingFileSort?Usingfilesort表示在索引之外,需要额外进行外部的排序动作。导致该问题的原因一般和orderby有者直接关系,一般可以通过合适的索引来减少或者避免。 explainSELECT\FROMtable\_itemWHEREuser\_
Wesley13 Wesley13
3年前
Java面试记录
首先,你需要先准备下工作相关的自我介绍,包括以下内容:  1.几年Java开发经验,大概概括下做过什么类型的项目,分别多久经验(如互联网金融,互联网电商,传统后台等)  2.选择1~2个近期关键项目具体介绍;  主要担任什么岗位,工作内容是什么,也可以简单介绍下团队人员组成,你在其中是属于什么角色(如架构搭建,核心代码编写,主要做接口开发等。。
Wesley13 Wesley13
3年前
Java并发编程总结(一)Syncronized解析
Syncronized解析作用:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。用法:(1)修饰普通方法(锁是当前实例对象)(2)修饰静态方法(锁是当前对象的Class对象)(3)修饰代码块(锁是Synchonized括号里配置的