自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

__一叶__的博客

红颜弹指老、刹那芳华

  • 博客(118)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 docker swarm 服务 v1.12

服务由多个任务实例组成,每个任务会启动一个容器。目前docker仅支持容器任务,不支持其它非容器类型的任务。服务工作原理:https://docs.docker.com/engine/swarm/how-swarm-mode-works/services/负载均衡:假设集群有10个节点,创建的服务只在其中一个节点启动,连接另外9个节点同样会被路由过来;若10个节点都启动服务,所有客户端只连接其中一个节点,同样会被均衡的路由到10个节点。1. 创建服务[root@jhdocker ~]# docker

2022-05-04 12:08:38 1289

原创 Erlang OTP

ApplicationSupervisorworker(gen_server, gen_event, gen_fsm)陷阱:http://erlang.org/doc/efficiency_guide/commoncaveats.html迁移到Erlang学习步骤:语法的学习,容易阅读开源项目代码,进阶掌握调试、性能调优工具,进阶理解Erlang虚拟机工作原理(熟悉操作系统原理)通用服务器(gen_server)服务器框架 + 回调模块回调模块(业务逻辑)是纯粹的顺序代码,没有并发、

2022-05-04 12:05:20 1605

原创 Erlang数据结构

erlang 常用数据结构

2022-05-04 12:03:53 753

原创 《Erlang in anger》

《erlang in anger》笔记

2022-05-04 12:02:50 326

原创 自我提升要怎么做?注意避开“能力陷阱”

写在之前曾经在樊登读书听过这本书,觉得不错,一直想看看原本,看完之后离散的知识点被整合了起来,又有很多收获,庆幸自己读了一下原书,建议每个人都读读原书,听别人讲书、或看别人的笔记获取到的是别人过滤之后的知识,原书中的内容远不止这些。想想这几个问题,看看你有没有被困陷进之中:1.人最重要的是首先要知道自己想成为什么样的人?你觉得是这样的吗?你在想这个问题的时候,你就被此刻的状态局限了2.你的工作内容是什么?怎么定义你的工作?你在思考这个问题时,如果只局限于你的专业技能、或你正在做的...

2021-02-23 13:58:35 540

原创 Docker技术原理之Linux UnionFS(容器镜像)

0.前言前面我们讨论了Docker容器实现隔离和资源限制用到的技术Linux namespace 、Linux CGroups,本篇我们来讨论Docker容器镜像用到的技术UnionFS。1.关于UnionFS1)什么是UnionFS联合文件系统(Union File System):2004年由纽约州立大学石溪分校开发,它可以把多个目录(也叫分支)内容联合挂载到同一个目录下,而目录的物理...

2018-09-20 15:19:03 12854 3

原创 Docker技术原理之Linux Cgroups(资源限制)

0.前言首先要知道一个运行的容器,其实就是一个受到隔离和资源限制的Linux进程——对,它就是一个进程。前面我们讨论了Docker容器实现隔离用到的技术Linux namespace,本篇我们来讨论容器实现资源限制的技术 Linux CGroups。1.关于Linux CGroupsLinux Cgroups的全称是Linux Control Groups。它最主要的作用,就是限制一个进程组...

2018-09-17 21:04:31 1144

原创 Docker技术原理之Linux Namespace(容器隔离)

0.前言首先要知道一个运行的容器,其实就是一个受到隔离和资源限制的Linux进程——对,它就是一个进程。而本文主要来探讨Docker容器实现隔离用到的技术Linux Namespace。1.关于 Linux NamespaceLinux提供如下Namespace:Namespace Constant IsolatesCgroup CLONE_NEWCGRO...

2018-09-17 21:02:53 9181 1

原创 cocos2d-x3.7 cclabel文字破碎,异常,变乱

效果图如下: 无论是按钮(control button),还是普通的label都有小概率出现这种情况。 该问题发现于cocos2d-x3.7原因:在3.x中使用ttfconfig创建的label,为了性能是创建了缓存的,字体纹理缓存的大小默认是512*512(不同版本大小可能不一样)//CCFontAtlas.cppconst int FontAtlas::CacheTextureWidt

2016-01-05 11:18:45 1934

原创 Android远程推送笔记

Android远程推送笔记Android推送有很多种实现方案,但都没办法和苹果的APNS比拟,这里主要来讲述一下我遇到的问题,和作出的抉择。 首先,为了快速接入,所以就没有自己搭建推送服务器,而是使用了第三方sdk。目前第三方推送已经有很多了,如果要自己搭建推送服务,而不使用第三方sdk,可以参考一下这篇博文 http://www.cnblogs.com/hanyonglu/archive/201

2015-12-15 13:56:42 758

原创 iOS应用App Store发布流程

iOS应用App Store发布流程要发布iOS应用到App Store首先得有一个开发者账号,且不能是企业版(企业版只能部署inhouse,不能部署到App Store)。 应用发布到App Store的流程主要分以下三个步骤。1.创建appid和证书前往 https://developer.apple.com 进入Member Center -> Certificates, Identifie

2015-12-15 13:54:49 905

原创 crash:EXC_ARM_DA_ALIGN(关于内存对齐,memcpy)

crash:EXC_ARM_DA_ALIGN(关于内存对齐,memcpy)问题描述在iOS game开发时做内存拷贝时出现了 crash:EXC_ARM_DA_ALIGN,debug版本不会出现,release版本只在部分机器上出现(ipad 1(iOS7),ipod touch 5(iOS7,iOS8), iphone5c(iOS9)). 所以初步猜想是release编译优化导致的,从crash

2015-11-24 10:38:14 1095

原创 阅读笔记《JavaScript语言精粹》

阅读笔记《JavaScript语言精粹》对象1.检索属性使用[]和.2.引用传递JavaScript的简单数据类型包括数字、字符串、布尔值、null值和undefined值。其它所有的值都是对象。数组是对象,函数是对象,正则表达式是对象。对象通过引用传递,它们永远不会被复制。3.原型当我们对某个对象做出改变时,不会触及该对象的原型,只有在检索值的时候才会被用到。原型连接在更新时是不起作用的。dele

2015-11-10 20:59:40 547

原创 笔记:ndk-stack和addr2line

笔记:关于ndk开发调试时,获取崩溃堆栈方法1. 使用ndk-stack直接获取c/c++崩溃代码的文件名和行号adb shell logcat | ndk-stack -sym $PROJECT_PATH/obj/local/armeabi2. 使用addr2line在程序崩溃时,知道奔溃地址,使用ndk下面的工具addr2line获取c/c++崩溃代码的文件名和行号arm-linux-andro

2015-10-24 14:35:13 1143

原创 关于iOS开发的各种证书

关于iOS开发的各种证书最近在接推送服务的时候,被各种证书弄得不亦晕乎,这里记录一下一些基本的证书作用:1. App IDsappID分明确的和通配的两种,如果要使用推送功能,只能用明确的。2. Devices使用xcode真机调试时,需要在后台将真机的UDID加入测试设备列表3. Certificates证书是为了解决信任问题,保证数据未被篡改。比如应用发布证书、推送证书等,在mac上通过Ke

2015-10-24 14:16:55 426

原创 Android&iOS安装包更新笔记

关于iOS和Android的安装包更新问题1. Android更新apk1)使用DownloadManager下载 2)使用HttpClient下载 apk的下载不能使用ssl,即不能使用https,因为DownloadManager不支持https 参考:http://stackoverflow.com/questions/8106155/android-downloadmanager-

2015-10-24 14:12:37 600

原创 阅读笔记《JavaScript高级程序设计》

0. 严格模式“user strict” (1整个脚本顶部,2函数体顶部)1. 数据类型undefined – 未定义 boolean string number object – 对象 或 null function0) typeof操作符(不是函数)alert(val) //error typeof val //返回”undefined”val定义局部变量(函数体内),全局变

2015-10-24 13:58:06 404

原创 cocos2dx - ActionManager内存泄露

ActionManager memory leakcocos2d-x3.7都3.7了还有这样的bug,真是好难过,不过还是好开源的,谁都可以贡献一下问题描述:当创建一个node,并让它run一个action的时,如果这个node没有添加到任何其它节点(即没有父节点),那么改node和action将一直不会被释放。原因:在node调用runAction时,会将动画交给ActionManager来管理,

2015-10-16 16:32:38 569

原创 Android&iOS崩溃堆栈上报

Android&iOS崩溃堆栈上报通过崩溃捕获和收集,可以收集到已发布应用(游戏)的异常,以便开发人员发现和修改bug,对于提高软件质量有着极大的帮助。在这里总结一下这几天做崩溃捕获的收获。我们项目使用的是cocos2dx-js,那么要捕获的信息就有以下三点: 1. js脚本语法错误、js调用为定义的native对象(程序不会崩溃) 2. iOS(obj-c)/Android(java)端的未捕

2015-10-16 15:39:10 1611

原创 关于字符编码

美国人首先对其英文字符进行了编码,也就是最早的ascii码,用一个字节的低7位来表示英文的128个字符,高1位统一为0; 后来欧洲人发现尼玛你这128位哪够用,比如我高贵的法国人字母上面的还有注音符,这个怎么区分,得,把高1位编进来吧,这样欧洲普遍使用一个全字节进行编码,最多可表示256位。欧美人就是喜欢直来直去,字符少,编码用得位数少; 但是即使位数少,不同国家地区用不同的字符编码,虽然0–1

2015-10-09 14:31:29 2352

原创 cocosbuilder中使用字体描边时,字符重叠,间距过小问题

cocosbuilder中使用字体描边时,字符重叠,间距过小问题cocos2d-x 3.7v3.7解析cocosbuilder中描边字体的代码如下:void LabelTTFLoader::parseProperties( cocos2d::Node * pNode, cocos2d::Node * pParent, CCBReader * ccbReader ){ _enableOutl

2015-09-24 14:09:21 769

原创 2dx关于js响应layer触摸消息的bug

cocos2dx关于js响应layer触摸消息的bugcocos2d-x 3.7问题描述:目前这个版本中(3.7),c++层的layer触摸消息只能通过消息的方式发送给js,不能像lua一样直接回调js注册的触摸回调接口,为了方便,我们更改一下layer类的onTouchBegan/onTouchMove...等接口,使其支持在layer的触摸响应中直接回调js接口。 具体实现见:http://w

2015-09-24 14:08:17 9018

原创 关于js-binding中Layer触摸事件的优化

关于js-binding中Layer触摸事件的优化cocos2d-x 3.71. 目前js中监听触摸事件带来的不便(特别是cocosbuilder)在目前的js-binding中,如果要监听layer的触摸事件,需要自己监听touch事件,如:var touchLayer = cc.Layer.creat();cc.eventManager.addListener({ event:

2015-09-24 14:06:13 1671

原创 2dx解析cocosbuilder中使用layer时的缺陷

2dx解析cocosbuilder中使用layer时的缺陷cocos2d-x 3.7cocosbuilder中的layer通常会用到触摸属性: 但是在2dx解析布局文件的时候,却很多属性都没解析:#define PROPERTY_TOUCH_ENABLED "isTouchEnabled"#define PROPERTY_ACCELEROMETER_ENABLED "isAcceleromete

2015-09-24 14:04:27 649

原创 关于 2dx v3.7 UIScale9Sprite的bug

关于 2dx v3.7 UIScale9Sprite的bug 刚把引擎从js binding v3.0升级到v3.7,发现了一些bug,这里先说说关于scale9sprite的1. 关于capInsetshttps://github.com/cocos2d/cocos2d-x/issues/13560 问题描述:使用cocosbuilder创建的九宫格图片,如果capInserts没有设置(即

2015-08-28 13:25:53 685

原创 c++11 Chrono时间库

c++11 Chrono时间库http://en.cppreference.com/mwiki/index.php?title=Special%3ASearch&search=chrono1. 持续时间 durationtemplate<class Rep, class Period = ratio<1>>class duration;class Rep: 滴答数 class Period: 滴

2015-06-14 17:23:24 644

原创 cocos2d-x lua table数据存储

cocos2d-x lua table数据存储version: cocos2d-x 3.61. 将table转为jsonhttp://blog.csdn.net/songcf_faith/article/details/46389157 http://www.cnblogs.com/songcf/p/4556773.html1) 引入json库require("src/cocos/cocos2d/

2015-06-13 12:30:26 1129

原创 cocos2d-x lua 使用ListView

cocos2d-x lua 使用ListViewversion: cocos2d-x 3.6本文主要讲述:使用Cocos Studio创建ListView,和列表项的模板,代码中通过模板创建列表的每一项,并替换其中的图片文字等。1. 加载Cocos Studio编辑好的资源-- //cocos studio 中资源的名字M.srcLayer = { ["listView"] = "list

2015-06-06 17:06:06 7929

原创 cocos2d-x lua与c++简单交互

cocos2d-x lua与c++简单交互version: cocos2d-x 3.6本文讲述lua与c++的一些简单交互: 1. lua通过消息方式调用c++无参接口 2. c++调用lua带参接口1.通过消息方式调用无参接口接收方监听消息命令,发送方发送消息请求。1) c++层监听消息//在appdelegate启动时监听void communication_cpp_lua::regist

2015-06-06 16:29:54 1047

原创 cocos2d-x lua 使用http(下载图片, POST JSON)

cocos2d-x lua 使用http(下载图片, POST JSON)version: cocos2d-x 3.61.使用http post json与服务器交互require("src/cocos/cocos2d/json")require("src/cocos/network/NetworkConstants")-- post jsonlocal xhr = cc.XMLHttpRequ

2015-06-06 15:57:37 4363

原创 cocos2d-x lua table与json的转换

cocos2d-x lua table与json的转换version: cocos2d-x 3.61.引入json库require("src/cocos/cocos2d/json")2.使用jsonfunction testJson() local beginTime = os.time() local testTable = {}-- [--

2015-06-06 15:54:10 1557

原创 cocos2d-x lua 调用onEnter和onExit

cocos2d-x lua 调用onEnter和onExitversion: cocos2d-x 3.6onEnter和onExit在lua中不会因节点别add和remove而直接被调用,当子节点被父节点add和remove时,会发送enter和exit的消息,所以需要再初始化节点的时候,监听消息,并在收到消息后调用onEnter或onExit。 local function onNodeEv

2015-06-06 15:33:21 1530

原创 cocos2d-x lua 触摸事件

cocos2d-x lua 触摸事件version: cocos2d-x 3.61.监听function GameLayer:onEnter() local eventDispatcher = self:getEventDispatcher() local function onTouchBegan(touch, event) local locationInNode

2015-06-03 17:50:15 1649

原创 cocos2d-x lua 使用自定义消息EventCustom

cocos2d-x lua 使用自定义消息EventCustomversion: cocos2d-x 3.61.发送消息-- post message-- event将会被传递给消息接收函数,所以所有需要传递的数据都可放到event中local event = cc.EventCustom:new("MSG_TEST")event._usedata = {["state"]=self.curS

2015-06-03 17:45:53 5419

原创 cocos2d-x lua 实现状态机

cocos2d-x lua 实现状态机version: cocos2d-x 3.60.状态机状态机主要分为2大类:第一类,若输出只和状态有关而与输入无关,则称为Moore状态机;第二类,输出不仅和状态有关而且和输入有关系,则称为Mealy状态机。

2015-06-03 17:44:43 1433

原创 cocos2d-x lua 实现单例(管理类)

cocos2d-x lua 实现单例(管理类)version: cocos2d-x 3.6

2015-06-03 17:34:03 2173

原创 使用cocos2d-x制作 Texture unpacker

使用cocos2d-x制作 Texture unpacker没错,就是unpacker。 在大多数游戏包里面,可以找到很多纹理图集,他们基本上是用texture packer制作的,有plist文件和png图片组成。 如果原来的小图比较少,倒是可以自己在plist里面找名字,如果小图有几百张,那真的会找疯掉。所以今天就用cocos2d-x引擎制作了一个将纹理大图解包成一张张小图的工具。

2015-05-25 17:07:25 1671

原创 使用markdown

0.什么是markdown首先,Markdown 可将你输入的任何文本转为 HTML,你可以用它来编写博客、文档和网页。你还可以直接在 Markdown 文档中书写 HTML,如果某些功能 Markdown 不具备的或者你忘记了语法,你可以直接用 HTML 来编写,因为 Markdown 能理解两种格式。你不一定需要在你的网站上安装Markdown就可以使用它,它是一个非常方便的写作语言,如果你不想

2015-05-22 13:55:42 355

原创 使用Github

0.为什么使用github牛人多,code多(你在其他地方能找到的开源库,上面基本上都有),使用方便简介1. 注册账号首先在github(https://github.com/)上注册自己的账号,注册之后你就可以创建自己的远程仓库了。2. 安装本地git工具然后本地安装git环境。Windows用户可以从这里现在https://windows.github.com/,安装后有可视化图形界面和命令行窗

2015-05-22 13:37:39 605

原创 cocos2d-x中使用Http

一、如何使用//发送接口void CmdHelper::postRequest(const char* cmdTag, const char* url, const char* postData, size_t postDataLengt){ CCHttpRequest* request = new CCHttpRequest(); request->se

2015-05-08 18:20:13 471

MirrorDriver屏幕录像

基于MirrorDriver实现的屏幕录像软件,不是MirrorDriver的源码哈。

2015-12-05

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

TA关注的人

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