February 5th, 2016
chicagoboss return jsonreturn {json, Data::proplist()}
February 5th, 2016
chicagoboss return jsonreturn {json, Data::proplist()}
January 29th, 2016
erlang gen tcpconnect(Address, Port, Options) -> {ok, Socket} | {error, Reason}
connect(Address, Port, Options, Timeout) ->
{ok, Socket} | {error, Reason}
January 23rd, 2016
shared ptr#include <iostream>
#include <thread>
#include <memory>
#include <chrono>
#include <atomic>
January 23rd, 2016
AutoBuild(3)今天svn提交莫名奇妙卡住,提交成功了,但svn命令一直不返回。强关了后cleanup,再更新后就没有更新了。 可见提交其实已经成功。删了重新checkout问题依旧。
January 21st, 2016
分布式服务器设计January 18th, 2016
redmineJanuary 17th, 2016
jekyll templatesVariables are surrounded by \{\{
and }}
like this:
My first name is \{\{ first_name }}. My last name is \{\{ last_name }}.
Tags provide arbitrary logic in the rendering process.
\{\% if user.is_authenticated %}Hello, \{\{ user.username }}.\{\% endif %}
Filters transform the values of variables and tag arguments.
\{\{ site.time | date_to_xmlschema }}
Comments look like this:
\{\# this won't be rendered #}
jekyll build
January 16th, 2016
Auto-Refresh code in HTML<meta http-equiv="refresh" content="5">
Please within the `head` tag of your html document, this `meta` tag
will instruct the browser to refresh every `5` seconds.
AutoBuild系统中我想有个页面能够一直看到当前项目的状态,先用着这个方法去定时查询。 以后看有没有办法实现通知。^_^
<body onclick="window.location.reload();">
...
</body>
window.scrollTo(0, document.body.scrollHeight);
January 12th, 2016
erlang执行shellJanuary 11th, 2016
记录一次内存错误debug项目在某页面崩溃,ide断在EventDispatcher::cleanToRemovedListeners()。 据断点处信息_toRemovedListeners里有的值retaincount已经为0了,一定是多释放了。 但找半天没找到哪些地方用的不对,都是在onEnter里添加监听,在onExit里取消监听。 去到2dx里代码仓库看最新的提交也没发现有修复类似bug的,应该还是自己代码的原因。 最后没办法了,在所有代码使用listener的地方,添加时先retain,remove时再release。 改着改着就发现一个自定义控件的一个方法在remove里没把listener指针置空,导致onExit时 又释放了一遍。再回头看崩溃页面,果然用到过这个控件。我*
January 10th, 2016
My first postStay hungry, Stay foolish.
求知若饥,虚心若愚。
2016.1.10
January 8th, 2016
AutoBuild(2)January 8th, 2016
AutoBuild(1)之前做过几个项目,项目版本发布管理都是件令人头疼的事。资源管理、程序打包有太多人工操作在里面, 只要涉及到人式操作就难免出错。使用打包脚本会减少部分操作,但是每次发版甚至是测试人员要包都很麻烦, 一着急还容易出错。一直想实现一个自动打包、发布系统,减少发布打包人为的修改操作。从页面上直接可以看到 项目各平台编译状况,测试也可以直接从上面下载安装。
架构、思路
版本管理系统
|
代码库版本变化
|
---------
| |
V V
平台编译 平台编译
服务器 服务器
|
V
编译、打包系统
|
|
V
管理服务器
|
V
结果
反向:从管理服务器发发布请求到指定平台,平台服务器再向代码仓库拉取最新代码,进行编译。
目前已经实现代码库变化,通知编译服务器编译、打包。该系统使用Erlang语言+各种脚本实现。遇到一些问题记录如下:
svn提交通知,repos/hooks/下面参照post-commit.tmpl写post-commit脚本
svn check update,svn status -u -q
,返回结果前面带*
的是要更新的
-epmd "epmd -port 5000 -daemon"
参数调整-kernel inet_dist_listen_min 4000 inet_dist_listen_max 4000
控制-setcookie xxxxx
可以设置,当然也可能通过HOME下.erlang.cookie
文件修改January 6th, 2016
markdown syntaxMarkdown is a superset of HTML, so any HTML file is a valid Markdown.
This text is in italics.
And so is this text
This text is in bold
And so is this text
This text is in both.
This text is rendered with strikethrough.
monospace
This is a paragraph.
Now I’m in paragraph 2. I’m still in paragraph 2 too!
I’m in paragraph three!
Leave 2 spaces at the end of a line to to a
line break
This is a block quote. You can
manually wrap your lines and put a
>
before every line. You can also use more than one levelof indentation. How neat is that?
Unordered lists
or
or
Ordered lists
You can indicate a code block by indenting a line with four spaces or a tab.
-module(test).
-export([test/0]).
test() ->
io:format("Hello World!~n").
json code block, use ```
{
"data": {
"uid": 4097
}
}
Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
---|---|---|---|
Cmd + ← | Fn + ← | 将光标定位到当前行的最左侧 | 很常用 |
Cmd + → | Fn + → | 将光标定位到当前行的最右侧 | 很常用 |
Cmd + ↑ | Ctrl + Home | 将光标定位到文章的第一行 | |
Cmd + ↓ | Ctrl + End | 将光标定位到文章的最后一行 |