自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

罗朝辉(飘飘白云)

关注智能系统、移动开发、图形图像、程序语言

  • 博客(245)
  • 资源 (4)
  • 收藏
  • 关注

原创 百度 Apollo Cyber RT简介、基本概念以及与 ROS 对照

一,背景ROS 应用于自动驾驶领域的不足:调度的不确定性:各节点以独立进程运行,节点运行顺序无法确定,因而业务逻辑的调度顺序无法保证;运行效率:ROS 为分布式系统,存在通信开销二,Cyber RT 框架从下到上依次为:基础库:高性能,无锁队列;通信层:Publish/Subscribe机制,Service/Client机制,服务自发现,自适应的通信机制(共享内存、Socke...

2019-03-30 16:04:52 34424

原创 微软C++并行库 pplx 的基本用法

前言并行计算库充分利用多核的优势,通过并行运算提高程序效率,业界有两个知名的c++并行库,一个是intel开发的TBB,一个是微软开发的PPL。TBB(Intel® Threading Building Blocks )TBB是intel用标准c++写的一个开源的并行计算库。它的目的是提升数据并行计算的能力,可以在其官网下载最新的库和文档。TBB主要功能:并行算法、任务调度、并行容器、同步原...

2019-01-31 13:34:58 19259

原创 区块链知识之 VRF: 可验证随机函数

区块链知识之 VRF: 可验证随机函数介绍可验证随机函数(Verifiable Random Function,简写 VRF)是一种将输入映射为可验证的伪随机输出的加密方案。该方案是由 Micali(Algorand的创建者)、Rabin 以及 Vadhan 于1999年提出的。Sharon Goldberg,Moni Naor,Dimitris Papadopoulos,Leonid Rey...

2018-12-04 16:20:48 10827 1

原创 Go之interface

Go之interface浅显地了解了一下 Go,发现 Go 语法的设计非常简洁,易于理解。正应了 Go 语言之父 Rob Pike 说的那句“Less is more”—— 大道至简。 下面就具体的语法特性说说我自己的体会。interface概览与通常以类型层次与继承为根基的面向对象设计(OOP)语言(如C++、Java)不同,Go 的核心思想就是组合(compos...

2018-03-09 17:33:32 7132

原创 2017年阅读统计

总计阅读 37 本评价统计: 五星图书 15 本,占比 40.5% 四星图书 13 本,占比 35.1% 三星图书 8 本,占比 21.6% 两星图书 1 本,占比 2.7% 标签统计: 软件开发 12 本 历史 7 本 政治 5 本 文学 3 本 教育 3 本 法学 2 本 经济 1 本

2018-01-16 09:22:50 9618 2

原创 记录一次重构

记录一次重构记录一次简单的重构是为了体现出代码重构的重要性和紧迫性。如果代码不能持续进化,那么随着新的代码不断增加,代码越来越难以维护和扩展,于是老代码成了难以追踪、难以理解、一动就崩溃的bad smell代码。此外,不通过持续打磨代码,程序员自身水平以及团队水平也难以得到提高。通过重构与review机制能够让编程经验与知识在团队中得以传递。更详细的关于为什么要重构代码以及怎样重构代码,推荐阅读经典《重构》

2017-09-05 14:35:21 6979

原创 软件开发书籍推荐

软件开发书籍推荐学而不码则罔,码而不学则殆。针对软件开发(语言C++、Java、Python,平台:Android),推荐一份能修炼内功提高编程素养的书单。难度等级1~5:1级最容易,5级最难 重点推荐:《代码大全2》+《重构》+《大话设计模式》+《编码》+《深入Java虚拟机(原书第2版)》计算机系统

2017-08-30 09:01:05 20627

原创 Python Matplot中文显示完美解决方案

原因与现象Matplot是一个功能强大的Python图表绘制库,很遗憾目前版本自带的字体库中并不支持中文字体。所以如果在绘制内容中需要显示中文,那么就会显示为方格字符。解决办法有一个较为完美的解决方案,通过扫描Matplot自带字体库以及系统字体库,寻找能够支持的中文字体,如果能够找到的话,就设置第一个为Matplot的字体熟悉。代码如下:def get_matplot_zh_font():

2017-05-05 16:09:16 26169 2

原创 Android4.4之后休眠状态下Alarm不准时的问题

Android4.4及之后休眠状态下Alarm不准时的问题为了减轻功耗,延长电池使用时间,Android 4.4及之后的版本采用非精准闹钟机制,以及休眠状态下的wakeup类型的alarm不会实时唤醒设备,而会等到机器被物理唤醒时才触发alarm。Android 6.0提供了新的api:setExactAndAllowWhileIdle()部分解决这个问题,但依然不能在休眠状态下精准唤醒。关于ala

2017-04-17 15:21:43 15730

原创 基于C++11模板元编程实现Scheme中的list及相关函数式编程接口

本文将介绍如何使用C++11模板元编程实现Scheme中的list及相关函数式编程接口,如list,cons,car,cdr,length,is_empty,reverse,append,map,transform,enumerate,lambda等。

2017-03-15 16:39:57 15843

原创 2016年阅读统计

2016年阅读统计2016年又即将过去了,这一年阅读时间相比往年少了许多,总计只阅读了 42 本书,评价以四星、五星图书为主,主题以历史、编程、育儿为主。其中有几本是重读,如《万历十五年》、《论美国的民主》、《士与中国文化》、《COM本质论》等。我写了一个 python 脚本来自动生成这个阅读统计小结,源码在这里,你可以对代码稍作修改并利用在线 python 运行环境生成你自己的年度阅读小结,欢迎试

2016-12-24 17:36:35 13761 2

原创 模板链接与前置声明引发的血案

有一个类模板,它会根据模板类型参数`T`的实际类型,调用不同的实例化泛型函数子去处理实际事情。在程序运行时,发现在不同的模块中用相同的类型参数来调用该类模板,得到的结果不一致,也就是说在传入同样的实际模板类型参数实例化了不同的泛型函数子。因此,可以推测在不同的模块中对同样的实际模板类型参数作了不一样的处理,导致生成了不一样的实例化。

2016-03-08 13:24:12 18244 3

原创 Android5 Zygote 与 SystemServer 启动流程分析

Android5.0.1 的启动流程与之前的版本相比变化并不大,OK,变化虽然还是有:SystemServer 启动过程的 init1(), init2()没有了,但主干流程依然不变:Linux 内核加载完毕之后,首先启动 init 进程,然后解析 init.rc,并根据其内容由 init 进程装载 Android 文件系统、创建系统目录、初始化属性系统、启动一些守护进程,其中最重要的守护进程就是 Zygote 进程

2016-02-25 10:42:40 15332 1

原创 2015私人阅读十五佳

2015私人阅读十五佳非暴力沟通沟通的艺术 看入人里看出人外父母效能训练手册对伪心理学说不精益创业 新创企业的成长思维枪炮病菌与钢铁人类简史 从动物到上帝现代世界史狂热分子 群众运动圣经独裁者手册社会主义 经济与社会学的分析编码 隐匿在计算机软硬件背后的语言儒家哲学水浒传注评本蒋介石与现代中国

2015-12-30 09:25:26 14423 2

原创 从贝叶斯定理说开去

从贝叶斯定理说开去罗朝辉 (http://kesalin.github.io/)CC 许可,转载请署名并保留出处简介贝叶斯定理是18世纪英国数学家托马斯·贝叶斯(Thomas Bayes)提出得重要概率论理论。以下摘一段 wikipedia 上的简介:所谓的贝叶斯定理源于他生前为解决一个“逆概”问题写的一篇文章,而这篇文章是在他死后才由他的...

2014-10-22 07:51:02 39925 9

原创 用Python编写博客导出工具

本文详细介绍如果通过Python编写一个博客导出工具,我希望没有学习过编程的人也能够学会一些简单的Python语法来修改这个脚本工具,以满足他们将其他类型的博客导出为文本格式。这也是我第一次学习和使用Python,所以相信我,你一定也可以将自己的博客导出为想要的文本格式。

2014-10-18 22:12:55 18200 1

原创 Android多线程分析之五:使用AsyncTask异步下载图像

在本系列文章的第一篇《Android多线程分析之一:使用Thread异步下载图像》中,曾演示了如何使用 Thread 来完成异步任务。Android 为了简化在 UI 线程中完成异步任务(毕竟 UI 线程是 app 最重要的线程),实现了一个名为 AysncTask 的模板类。使用 AysncTask 能够在异步任务进行的同时,将任务进度状态反馈给 UI 线程(如让 UI 线程更新进度条)。正是由于它与 UI 线程紧密相关,使用的时候要就有一些限制,AysncTask 必须在 UI 线程中创建,并在 UI

2014-07-19 15:10:07 14812 1

原创 Android多线程分析之四:MessageQueue的实现

在前面两篇文章《Android多线程分析之二:Thread的实现》,《Android多线程分析之三:Handler,Looper的实现》中分别介绍了 Thread 的创建,运行,销毁的过程以及 Thread与 Handler,Looper 之间的关联:Thread 在其 run() 方法中创建和运行消息处理循环 Looper,而 Looper::loop() 方法不断地从 MessageQueue 中获取消息,并由 Handler 分发处理该消息。接下来就来介绍 MessageQueue 的运作机制,Mes

2014-07-14 17:31:10 40782 9

原创 Android多线程分析之三:Handler,Looper的实现

在前文《Android多线程分析之二:Thread的实现》中已经详细分析了Android Thread 是如何创建,运行以及销毁的,其重点是对相应 native 方法进行分析,今天我将聚焦于 Android Framework 层多线程相关的类:Handler, Looper, MessageQueue, Message 以及它们与Thread 之间的关系。可以用一个不太妥当的比喻来形容它们之间的关联:如果把 Thread 比作生产车间,那么 Looper 就是放在这车间里的生产线,这条生产线源源不断地从

2014-07-12 10:04:07 25756 6

原创 Android多线程分析之二:Thread的实现

在前文《Android多线程分析之一:使用Thread异步下载图像》中演示了如何使用 Thread 处理异步事务。示例中这个 Java Thread 类都是位于 Framework 层的类,它自身是通过 JNI 转调 dalvik 里面的 Thread 相关方法实现的。因此要分析 Androd 中的线程,就需要分析这两层中的与线程相关的代码,这就是本文要探讨的主题。本文将把 Framework 层中的 Java Thread 称为 Android 线程/Thread,而把 dalvik 中的 Thread

2014-07-10 17:34:21 24809 4

原创 Android多线程分析之一:使用Thread异步下载图像

打算整理一下对 Android Framework 中多线程相关知识的理解,主要集中在 Framework 层的 Thread, Handler, Looper, MessageQueue, Message, AysncTask,当然不可避免地要涉及到 native 方法,因此也会分析 dalvik 中和线程以及消息处理相关的代码:如 dalvik 中的 C++ Thread 类以及 MessageQueue 类。本文将从一个使用 Thread 的简单 应用入手,引入 Thread 这个话题,接下来的几篇文

2014-07-09 20:48:53 18500

原创 [Swift] 数组恒等 === 的 bug?!

数组的恒等 === 在文档中是这么说的:Check whether two arrays or subarrays share the same storage and elements by comparing them with the identity operators (=== and !==).数组的恒等 === 判断即判断两个数组所指向的元素存储区是否相同。但 XCode 6 测试下来,结果大为迥异:var a = [1, 2, 3]; a === a 其结果却为 false,

2014-06-13 21:17:41 15294 2

原创 在遍历中使用 iterator/reverse_iterator 进行 Erase 的用法

众所周知,在使用迭代器遍历 STL 容器时,需要特别留意是否在循环中修改了迭代器而导致迭代器失效的情形。下面我来总结一下在对各种容器进行正向和反向遍历过程中删除元素时,正确更新迭代器的用法。首先,要明白使用正向迭代器(iterator)进行反向遍历是错误的用法,要不干嘛要有反向迭代器呢(reverse_iterator)。其次,根据容器的特性,遍历删除操作的用法可以分为两组,第一组是 list 和 vector,第二组是 map 和 set。

2014-04-21 20:02:51 37398 6

原创 【老罗笔记】关于成就的那些事

最近在练习主题阅读(关于主题阅读,请参考《如何阅读一本书》,或许我会整理一篇文章来),选的主题就是成就是怎样获得的?为此阅读/复习了一些书,获益良多,特此总结分析在这里,也算是完成主题阅读步骤的流程。1,髓鞘质原理:人类的活动(练习)最终都是通过在神经纤维之间传导神经信号来完成的,习得一种技能就通过神经信号的触发在神经元之间建立有效连接来实现的。髓鞘质则是包裹在神经纤维上的一层层绝缘物质。

2014-04-06 13:09:45 12354

原创 【老罗笔记】哪来的天才——练习中的平凡与伟大

【老罗笔记】哪来的天才——练习中的平凡与伟大===================================================第一章 迷 伟大的成就比以往任何时候都更有价值,但它来自哪里呢?===================================================辛苦工作,天赋,超常的智力或记忆力都不是取得伟大成就的原因。

2014-04-02 23:34:39 12809

原创 【老罗笔记】异类(Outliers)

序 罗赛托之谜意大利福贾省的罗赛托的人们患心脏病的死亡率相当低,沃尔夫和布鲁恩对什么是那里人们的健康根源做过研究(友善和谐的社区)。本书将对什么是成功的根源进行研究。==========================================第一部分 机遇==========================================第一章 马太效应合适的出生月份能提高成为明星

2014-04-01 09:49:53 12194

原创 【老罗笔记】一万小时天才理论

【老罗笔记】一万小时天才理论一万小时天才理论的三大要素:精深练习,激情,伯乐。精深练习一万小时是习得技能回路的必经之路,而激情能激发并保持持久进行精深练习的动力,伯乐在触发和维持激情以及精深练习中都有着非常重要的引导与指导作用。在成长路上遗传作用的影响其实没那么大,而精深练习是必不可少的;犯错不是罪,它能提供有用信息,即通常说的“试错法”,因而推导认为不敢冒险犯错的人是无法发展他们

2014-03-31 12:55:55 8123

原创 招聘:有兴趣做一个与Android对等的操作系统么?

招聘:有兴趣做一个与Android对等的操作系统么?前不久我发了一篇《八一八招聘的那些事儿》讲了我自己作为求职者对招聘的一些看法。那个时候我还在求职,对求职的结果还是挺满意的,五家公司面试,放弃了其中三家的offer(包括盛大云计算,东航信息部以及一小美资公司),拒了一家的二面(因为我已经做好决定了),最后选择了以前工作过的老东家-上海科泰。虽然科泰给的 offer 待遇不是所有

2013-08-28 21:46:46 9380 23

原创 让gcc支持成员函数模板的trick

gcc 4.7.3 不支持成员函数模板特化。同样的成员函数模板特化的代码在 VS2010中编译运行都正常,而在 gcc 4.7.3中却编译不过。可以通过一个小小的 trick 来达到近似的效果。

2013-07-12 22:08:44 6402

原创 八一八招聘的那些事儿

八一八招聘的那些事儿罗朝辉 (http://blog.csdn.net/kesalin//)本文遵循“署名-非商业用途-保持一致”创作公用协议最近换了份工作,有一些求职的经历,再加上之前在公司做过一些招聘的事情,对于应聘与招聘有很多的感悟。趁着这感悟还尚未退温,在这职业的空挡期整理一下,记录下来。下面,我将从有工作经验的求职者的角度来八一八我对招聘的一些看法。

2013-06-10 22:41:15 6813 9

原创 [深入浅出Cocoa]Block编程值得注意的那些事儿

[深入浅出Cocoa]Block编程值得注意的那些事儿罗朝辉 (http://blog.csdn.net/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议一,前言在前文《深入浅出Cocoa多线程编程之block与dispatch quene》中我介绍了 block 的一些基本语法以及如何和 GCD 结合的使用示例。block 是在 iOS 4 中引入

2013-04-30 21:05:00 16328 8

原创 [深入浅出Cocoa]iOS网络编程之NSStream

[深入浅出Cocoa]iOS网络编程之NSStream罗朝辉 (http://blog.csdn.net/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议 一,NSStream简介首先来回顾下。在前文《[深入浅出Cocoa]iOS网络编程之Socket》中,提到iOS网络编程层次模型分为三层:Cocoa层:NSURL,Bonj

2013-04-29 20:06:57 31469 7

原创 [深入浅出Cocoa]iOS网络编程之CFNetwork

[深入浅出Cocoa]iOS网络编程之CFNetwork罗朝辉 (http://blog.csdn.net/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议 一,CFNetwork 简介首先来回顾下。在前文《[深入浅出Cocoa]iOS网络编程之Socket》中,提到iOS网络编程层次模型分为三层:Cocoa层:NSURL,B

2013-04-14 20:59:46 46044 20

原创 [深入浅出Cocoa]iOS网络编程之Socket

[深入浅出Cocoa]iOS网络编程之Socket罗朝辉 (http://blog.csdn.net/kesalin)CC 许可,转载请注明出处更多 Cocoa 开发文章,敬请访问《深入浅出Cocoa》 CSDN专栏:http://blog.csdn.net/column/details/cocoa.html一,iOS网络编程层次模型

2013-04-13 20:51:15 72320 15

原创 [深入浅出Cocoa]iOS程序性能优化

[深入浅出Cocoa]iOS程序性能优化罗朝辉 (http://blog.csdn.net/kesalin)CC 许可,转载请注明出处 iOS应用是非常注重用户体验的,不光是要求界面设计合理美观,也要求各种UI的反应灵敏,我相信大家对那种一拖就卡卡卡的 TableView 应用没什么好印象。还记得12306么,那个速度,相信大家都受不了。为了提高 iOS 的运行速度,下

2013-04-05 18:03:22 14934 3

原创 [深入浅出iOS库]之图形库Core Plot

[深入浅出iOS库]之图形库Core Plot罗朝辉 (http://blog.csdn.net/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议一,前言Core Plot和s7Graph都是可在iOS平台下使用的开源矢量图形库,s7Graph功能相对比较简单一些,在此就不介绍了。Core Plot 功能强大很多,我们可以利用它很方便地画出复杂的曲线

2013-04-04 13:57:39 25175 10

转载 Win7下运行小雨伞tinyumbrella-5/6异常:Exception in thread "AWT-EventQueue-0"解决办法

[转]Win7下运行小雨伞tinyumbrella-5/6异常:Exception in thread "AWT-EventQueue-0"解决办法来自威锋网原文链接:http://bbs.weiphone.com/read-htm-tid-4659389.html国内用户会发现在windows7里全新(强调:全新)安装tinyumbrella后无法运行。根源是tinyum

2013-03-30 08:32:48 12254

原创 [深入浅出iOS库]之数据库 sqlite

[深入浅出iOS库]之数据库 sqlite罗朝辉 (http://blog.csdn.net/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议一,sqlite 简介前面写了一篇博文讲如何在 C# 中使用 ADO 访问各种数据库,在移动开发和嵌入式领域也有一个轻量级的开源关系型数据库-sqlite。它的特点是零配置(无需服务器),单磁盘文件存储数据(就

2013-03-29 09:11:13 6192

原创 [C#]ADO访问多数据库的C#库

[C#]ADO访问多数据库的C#库罗朝辉 (http://blog.csdn.net/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议一,C# Database 库整了一个支持通过ADO方式访问多种数据库(OLE,MySQL,SQL Server,Oracle)的 C# 库 Database。实现相当简单,用工厂方法创建各种数据库访问的 wrappe

2013-03-27 19:16:41 7351

原创 我的iOS作品

我的iOS作品罗朝辉 (http://blog.csdn.net/kesalin)CC 许可,转载请注明出处前言做了好几年的 iOS 开发了,业余也零零散散地写了不少代码和博文教程。可惜一直都没有整理下,上次过年回家在张江广兰路把笔记本给丢了,损失惨重,好多代码没有及时备份都丢了。痛定思痛,决定把业余写过的 iOS 代码,笔记什么的整理下,搬到 github 上

2013-03-23 17:51:25 19235 12

深入浅出Cocoa教程

这是本人在学习和使用 Cocoa 开发过程中写过的一些文章,涵盖 runtime,class, message,KVO,多线程,core data,网络,framework,plugin等各方面。不仅研究了应该如何使用这些技术,还深入底层探究这些技术是如何实现的,及其 runtime 分析。整体上来说还比较成系列,所以整理出来,希望对大家有帮助。 CSDN移动开发专栏《深入浅出Cocoa》包含了这个pdf 中的所有文章,并会持续添加新的文章,欢迎大家访问该专栏(http://blog.csdn.net/column/details/cocoa.html),查看最新情况。

2012-11-29

VC10中的C++0x特性.pdf

这一系列文章介绍Microsoft Visual Studio 2010 中支持的C++ 0x特性。 Part 1 :介绍了Lambdas, 赋予新意义的auto,以及 static_assert; Part 2( 1 , 2 ):介绍了右值引用(Rvalue References); Part 3:介绍了表达式类型(decltype) 翻译:飘飘白云

2009-06-04

深度探索C++物件模型_中

深度探索C++物件模型,强烈推荐的C++高级系列书籍,

2008-08-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除