一个自带锁的简单队列, 用单向链表实现:
template
class FastQueue
{
struct node
{
T element;
node * next;
};
node * last;
node * first;
LOCK m_lock;
public:
FastQueue()
{
last = 0;
first = 0;
}
... // 以下暂省略
继续阅读 »
参考原文:https://github.com/angular-ui/ui-router/wiki
ui-router 的工作原理非常类似于 Angular 的路由控制器,但它只关注状态。
在应用程序的整个用户界面和导航中,一个状态对应于一个页面位置
通过定义controller、template和view等属性,来定义指定位置的用户界面和界面行为
通过嵌套的方式来解决页面中的一些重复出现的部位
最简单的形式
模板可以通过下面这种最简单的方式来指定
html
in index.html
javascript
// in app-states.js (or whatever you want to nam
继续阅读 »
首先, 单个socket是面向玩家的, 以此展开的会有,这个玩家,也就是说这个socket,会拥有一个gameWorld, 以及在玩家login之前, 所有玩家都面向的gameHolder, Holer处理登陆, 已登陆玩家数据网络层将推送给Player类处理。
transfer和gameHoler, gameWorld, Player之间,各使用3个线程安全的数据队列m_DataQueue.
m_DataQueue的类型是 FastQueue m_DataQueue; 它的原型是:
{}
template
class FastQueue
{
struct node
{
T element;
继续阅读 »
相信很多开发者都有自己的话要说。Android 的发展确实太快了,每年的都有很多新东西出现,想要覆盖所有新东西感觉也不太可能,我这里主要说一下主要的 Android 的主要新技术发展,其实了解 Android 的发展趋势,可能对开发者更有帮助。
more
开发工具
Android Studio: Google 官方放弃 Eclipse 和 Android Studio 普及。AS 虽然不算新,但是对 Android Studio 这个软件的更新速度快的惊人,有大量的新功能发布。例如支持很多注解代码提示注解、Live code template、支持自动生成 Parcelable 实现等等,作为开发者,持续关注这个更新列表 Rec
继续阅读 »
Heat OpenStack API
path_prefix="/{tenant_id}"
validate_template /validate
list_resource_types /resource_types
resource_schema /resource_types/{type_name}
generate_template /resource_types/{type_name}/template
index /stacks
create /stacks
preview /stacks/preview
detail /stacks/detail
lookup /stacks/{stack_name}
lookup
继续阅读 »
Heat中的更新stack行为,基本就是参照CloudFormation设计和实现的。所以,这里的主要参考来源就是CloudFormation的官方文档,另外就是Heat Icehouse版本的实现代码。
一个示例
首先我们需要一个初始模板,https://s3.amazonaws.com/cloudformation-templates-us-east-1/UpdateTutorial+Part1.template,该模板展示的是一个php应用,Apache Web Server、PHP 和简单的 PHP 应用程序全部都由默认安装在 Amazon Linux AMI 上的 AWS CloudFormation 帮助程序脚本进行
继续阅读 »
之前的一篇博客讲了AWS和Heat中AutoScaling的机制和大概的实现,本篇是上一篇的姊妹篇,主要讲autoscaling在heat中的简单使用。
环境准备
我们还是以一个模板为例,模板内容如下:
{
"HeatTemplateFormatVersion": "2012-12-12",
"Description": "Template which create a base autoscaling for launch base.",
"Parameters": {
"InstanceType": {
"Type": "String"
},
"ImageId": {
继续阅读 »