在实现线程的过程中,我们经常会写类似于这样的代码:{ mutex_.lock(); //XXX if(...) 语句; //XXX mutex_.unlock();}虽然这段代码是正常的加锁解锁,但是有时候我们难免会出现一些低级错误,例如把 忘了写...
分类:
系统相关 时间:
2014-10-08 04:01:04
阅读次数:
379
1.分别模拟insert,update和delete造成阻塞的示例,并对v$lock中的相应的信息进行说明,给 出SQL演示。Insert示例会话1:SQL> select * from t1;ID1234SQL> alter table t1 add primary key(id);表已更改。SQ...
分类:
数据库 时间:
2014-10-08 00:37:54
阅读次数:
445
最终效果图:
环境版本:cocos2d-x-3.3beta0 使用内置的物理引擎
计时器没有添加,可参考【cocos2d_x_06_游戏_一个都不能死】
主场景
//
// FlappyBirdScene.h
// 01_cocos2d-x
//
// Created by beyond on 14-10-7.
//
//
#ifndef ___1_co...
分类:
移动开发 时间:
2014-10-08 00:31:04
阅读次数:
252
Control rhythmbox inside EmacsControl rhythmbox inside EmacsIt is until recently that I came across a configuration option that emacs cansend shell co...
分类:
其他好文 时间:
2014-10-07 22:33:54
阅读次数:
177
我们不止一次写过这种代码: { mutex_.lock(); //XXX if(....) return; //XXX mutex_.unlock();
} 显然,这段代码中我们忘记了解锁。那么如何防止这种情况,我们采用和智能指针相同的策略,把加锁和解锁的过程封装在一个对象中。 实现“对象生命期”等...
分类:
系统相关 时间:
2014-10-07 21:53:24
阅读次数:
215
lock-free是一种基于原子变量类来构建的非阻塞同步算法。比较并交换(compare-and-swap)我们经常会先检查某项东西,然后对其进行修改,如if(X...) {X=...}。这种行为在多线程下并不是线程安全的。那我们该如何做呢?一种方法是对操作进行加锁,如synchornized(ob...
分类:
其他好文 时间:
2014-10-07 18:37:35
阅读次数:
151
问题: Given an array of integers, every element appears twice except for one. Find that single one. Note: Your algorithm should have a linear runtime co...
分类:
其他好文 时间:
2014-10-07 18:14:13
阅读次数:
189
一个项目算是告于段落,其中硬件学到了不少知识,软件调试也取得了很大进展。现在把硬件的一些经验总结一下。 1. 芯片电源接入之前,最好放一个磁珠。 2. 电源打孔时,应该多打几个孔,同时孔不要太小。 3. 重要的芯片或者接插件,布局好之后,右击lock锁定。 4. 主控芯片的电容,最好在其背面。 5....
分类:
其他好文 时间:
2014-10-07 17:35:03
阅读次数:
198
第一步: 每一类资源用了多少内存。 select clerks.type, sum(clerks.virtual_memory_reserved_kb) as Reserve, sum(clerks.virtual_memory_committed_kb)as [Co...
分类:
数据库 时间:
2014-10-07 13:16:23
阅读次数:
211
使用versions 出现SVNWorking Copyxxxlocked解决方案:首先,先定位到工程目录下,然后使用如下命令查看是否有锁find . | grep ".svn/lock"然后再用:find . | grep ".svn/lock" | xargs rm再进入versions项目正常...
分类:
其他好文 时间:
2014-10-07 13:12:43
阅读次数:
144