发博文
个人资料
livexmm
livexmm
  • 博客等级:
  • 博客积分:53
  • 博客访问:6,167
  • 关注人气:5
访客
加载中…
好友
加载中…
评论
加载中…
留言
加载中…
博文
标签:

cpu指令优化

杂谈

分类: C/C

今天看leveldb源码,看到原子指针的实现有些不明白,于是群内问了一下,为什么这样实现。原因在于一些平台可能会对CPU的指令执行顺序做优化,而改变执行顺序,这样可能会导致相关的错误,于是我上找了一下文章,找到一篇,一眼就看明白了,哈哈,不错 如下转载:http://www.cppblog.com/jerryma/archive/2011/08/11/153039.html

gcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。

其声明如下:

type __sync_fetch_and_add (type *ptr, type value, ...)
type __sync_fetch_and_sub (type 
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

杂谈

分类: C/C
写了这么长时间的C 居然不知道还有Valgrind这样的东西 真是惭愧万分啊……

调不尽的内存泄露,用不完的Valgrind
(一个介绍程序调试的精彩讲解:http://www.ibm.com/developerworks/cn/linux/l-pow-debug/)

Valgrind 介绍

Valgrind是一个GPL的软件,用于Linux(For x86, amd64 and ppc32)程序的内存调试和代码剖析。你可以在它的环境中运行你的程序来监视内存的使用情况,比如C 语言中的malloc和free或者 C++中的new和 delete。使用Valgrind的工具包,你可以自动的检测许多内存管理和线程的bug,避免花费太多的时间在bug寻找上,使得你的程序更加稳固。

Valgri

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

杂谈

    下午部门开会,反正各种听不懂,对数据库真是不懂呀,要加油了。虽然数据库不懂,但是写代码还是懂点的么。于是对于下午的一个疑问进行了进一步的学习。

    Unicode(http://zh.wikipedia.org/wiki/Unicode)

    Unicode的编码和实现大概来说,Unicode编码系统可分为编码方式和实现方式两个层次。

    编码方式Unicode的编码方式与ISO 10646的通用字符集(Universal Character Set,UCS)概念相对应,目前实际应用的Unicode版本对应于UCS-2,使用16位的编码空间。也就是每个字符占用2个字节。这样理论上一共最多可以表示216即65536个字符。基本满足各种语言的使用。实际上当前版本的Unicode尚未填充满这16位编码,保留了大量空间作为特殊使用或将来扩展。

   上述16位Unicode字符构成基本多文种平面(Basic Multilingual Plane,简称BMP)。最新(但未实际广泛使用)的Unicode版本定义了16个辅助平面,两者合起来至少需要占据21位的编码空间,比3字节略少。但事实上辅助平面字符仍然占用4字节编码空间,与UCS

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

转载

分类: android开发
3ks

开发环境:Ubuntu 10.04

阅读  ┆ 评论  ┆ 转载原文 ┆ 收藏 
闲着无聊自己实现了一下android的手写功能
实现流程如下:
1.利用GestureDetector类 设置监听OnGestureListener
        @Override
        public boolean 0nscroll(MotionEvent event0, MotionEvent event1,
                float distanceX, float distanceY) {
            // TODO Auto-generated method stub
           //实现该方法 记录点
            return false;
        }
android平台的点是浮点型的 这是要注意的 为了减少存储点数量可以取整后 去重或去近似 当然这势必导致画出的和实际笔顺有一定的差距 但是并不明显 如果你试图矢量化后进行传输 对数据精简和压缩是比较重要的

2.显示画出的笔画,我使用的方式是继承ImageView,在onDraw中进行利用Canera手工进行双缓
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
最近闲着无聊 正好在学习android以及一点web开发 查了点网上资料 利用HttpClient模拟网页进行登录,Jsoup进行页面解析,renren和sina都是直接传的是明文相对简单,只是如果要发信息必须获得home页面的某些字段,所以需要进行解析
部分代码如下(PS:如果要使用publishMessage 先调用login 然后getHomePage):
Sina:
    public int login(){
        String loginPage = 'http://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.3.11)';
       
        int state = WebException.SUCCESS;
        HttpPost httppost = new HttpPost(loginPage);
       
        List<NameValuePair> list = new ArrayList<NameValuePair>();
        list.add(new BasicNameValuePair('client', 'ssologin.js(v1.3.11)'
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2011-02-14 09:28)

前段时间需要做一个android的日志收集模块 网上找了一些资料 使用邮件形式直接发送到指定邮箱 跳过选择选择邮件发送 默认使用gmail发送 带认证 

http://cid-63860ff07aa7d1cb.office.live.com/browse.aspx/.Public?uc=1 (Log_UpLoad)

使用方式:

配置发送邮箱 发往邮箱 在XLog中进行
 private final static String GMAIL = null;  //请设置默认gmail邮箱号 注意是gmail
 private final static String PASSWORD = null; //请设置某人gmail邮箱号的密码
 private final static String SENDTO = null;  //请设置发往的邮箱
 
需要需要收集信息的地方 放入
  XLog xlog = new XLog(context);
  xlog.collectDeviceInfo(context);
  xlog.saveLogInfo(ex);
我放在MainActivity的onCreate里
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2010-12-15 23:20)
标签:

杂谈

分类: android开发

刚开始学习android开发 照搬照抄式的写了第一个android程序

是个简单的判断身体肥胖与否的,使用的ecilpse+android sdk 2.3 跑仿真器速度相当慢 有事还出现仿真器中的android系统死掉。整个工程上传在这里

http://cid-63860ff07aa7d1cb.office.live.com/browse.aspx/.Public

代码还算清晰



阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2010-12-15 18:22)
标签:

杂谈

分类: 无聊

好久没写日志了 也越来越懒得写了 今天类谢神式凌乱一把

这个学期基本没干什么事 自从从罗纬那边辞职之后 就开始无聊的投简历 笔试 面试过程 一直觉得自己对钱不是特关心 而各种面试中 我却把钱考虑的那么重要 还好后来发现自己错大了 能明白过来就好 现在么把2家大公司推了 处于等兴趣所向的公司给offer中 不过也不像以前那么急了 反倒是淡定的很

自从2奖无缘之后 就对学校的一切看淡了 什么免毕业设计 评什么奖 发什么钱 都已然没有兴趣了 或许是我已经完全失望了

星期天在庄神的住所待了一晚 这个猥琐男 房间乱的真是 各种农夫三拳瓶子 各种包装袋子 各种被子 还有一桶的袜子什么的 不过过的也算是潇洒 想睡睡想写写 很痛快么 其实挺羡慕庄神的都过得这么潇洒 各种旅游 各种牛逼 各种无敌 星期一回了嘉善 交代了一下找工作的情况 星期二去办了包年宽带 路过高中毕业时去实习的银河电脑 物是人非 除了老板和老板娘还是 其他都不是了 对面的创威电脑店面也缩减了 估计是现在电脑市场利润薄了吧 那家创威旗舰店的招牌也铁锈的不成样了 记得是在那个暑假开张的 原来已经四年了 真的很快呢 四年大家都变了多少呢 

昨晚弄某

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

rubyonrails

杂谈

分类: rubyonrails
ruby on rails:
    ruby 1.8.7
    rubygem1.3.6
    rails3.0
    sqlite3

1.install ruby
from http://www.ruby-lang.org/en/news/2010/08/16/ruby-1-8-7-p302-is-released/  get ruby-1.8.7
tar xvf ruby-1.8.7
cd ruby-1.8.7
./configure && make && make install
use 'ruby -v' to see whether it install successfully

2.install rubygem
download rubygem1.3.6 from http://rubygems.org/
tar xvf rubygem1.3.6
cd rubygem1.3.6
ruby setup.rb
........wait for serival minutes.......
use 'gem -v' to see it whether install successfully

3.install rails
gem install rails --include-dependencies
........wait for serival minutes.......
use 'rails -v' to see whether it install successfully

4.create simple helloworld
rails new demo
cd demo
bundle install(if you are in
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
  

新浪BLOG意见反馈留言板 不良信息反馈 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有