自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

陈嘉怡的专栏

专注服务器。本人有对本博客的所有原创文章的版权。

  • 博客(29)
  • 收藏
  • 关注

原创 linux mysql 开机启动

在/etc/profile(或者~/.bashrc) 最后一行加上(libexec 是mysqld的目录)PATH=/usr/libexec:$PATHexport PATHchkconfig --add mysqld on service mysqld start

2013-05-24 17:11:28 793

原创 centos 中文环境

中文字体显示:yum install fonts-chinese yum install fonts-ISO8859-2中文输入法:1.需要root权限,所以要用root登录 ,或su root2.yum install "@Chinese Support"3.exit4.回到桌面,system->preferences->input method5.如果没有,先注销一下。6.按照提

2013-05-21 09:50:11 893

原创 mysql 常用操作

常用操作(1)修改密码bash$ mysql -u root mysql  #用mysql客户程序  mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='hunte';  mysql> FLUSH PRIVILEGES;  mysql> QUIT(2)给root用户再添加一个对全部

2013-05-20 22:14:30 861

原创 centos 添加源

/etc/yum.repos.d/CentOS-Base.repo文件中添加[dag]name=Dag RPM Repository for Red Hat Enterprise Linuxbaseurl=http://ftp.riken.jp/Linux/dag/redhat/el$releasever/en/$basearch/daghttp://apt.sw.be/red

2013-05-20 21:50:14 1414

原创 一读一写无锁队列c++实现

限制一个线程读,一个线程写,不加锁的队列,使用单链表实现,测试环境:centos 5.9[root@localhost test]# cat test.cpp #include <iostream>#include <pthread.h>template<class QElmType>struct qnode{ ...

2013-05-19 02:46:53 7532 5

原创 zlib 库的使用

1、zlib 介绍zlib 是通用的压缩库,提供了一套内存内压缩和解压函数,并能检测解压出来的数据的完整性。zlib 也支持读写 gzip (.gz) 格式的文件。

2013-05-18 03:17:32 4520

原创 linux 设置静态网络地址时用到的信息

先用自动分配ip的查看合法的信息查看ip和HWaddr[root@localhost trunk]# ifconfigeth0      Link encap:Ethernet  HWaddr 00:0C:29:00:CF:2E            inet addr:192.168.67.135  Bcast:192.168.67.255  Mask:255.255.255

2013-05-15 23:30:16 1133

原创 vim基本命令

转自:http://linux.chinaunix.net/techdoc/beginner/2009/12/20/1150108.shtml1.vim#在命令行中输入vim,进入vim编辑器2.i#按一下i键,下端显示 --INSERT--#插入命令,在vim中可能任意字符都有作用3.Esc#退出i(插入)命令进行其它命令使用4.:r file

2013-05-14 19:06:38 858

原创 share_ptr 实现c++ 句柄引用计数

代码如下#include #include using namespace std;class Point{public:Point() : xval(0),yval(0){};Point(int x, int y): xval(x), yval(y){};Point(const Point & p){if(this == &p)return ;

2013-05-13 00:24:21 1588

原创 mysql 开机启动

方法一:在/etc/rc.d/rc.local文件末尾添加如下一行/usr/local/mysql5/bin/mysql start方法二:在mysql5目录下找到support-files目录将其中的mysql.server复制修改为/etc/init.d/mysqldcp support-files/mysql.server /etc/init.d/mysqldchkconfig --

2013-05-11 15:00:17 828

原创 swig-python使用和测试

转自:http://blog.csdn.net/king_on/article/details/80923991. SWIG介绍(来自于wiki)SWIG (Simplified Wrapper and Interface Generator) is anopen source software tool used to connectcomputer programs or

2013-05-09 11:44:04 1834

原创 c++中使用python

C++中调用Python脚本的意义就是热加载,可以把它当成脚本形式的动态链接库,只要提供的函数接口是一致的。c++也有动态库,那么python的作用也就是不需要每次手动编译该文件,易于维护,不会当机。甚至可以让策划人员自己编辑python脚本(跟lua类似,现在比较多的是lua嵌入c++使用)。

2013-05-09 11:38:55 1415

转载 山海传说ai 设计

一 城镇ai:   1.1 任务npc ai:当鼠标指向时,npc头顶会出现名字。并高亮显示npc模型。鼠标移开                  后npc恢复初始状态。 发布任务npc ai:不会移动,不会攻击,不可被攻击。                          若有新任务,npc头上会有黄色惊叹号。 提交任务npc ai:不会移动,不会攻击,不可被攻击。

2013-05-08 16:22:49 1923

原创 c++智能指针

C++ 沉思录也算是C++中的经典书籍,其中介绍OO思想的我觉得很好,但是全书中贯穿了handle,使用引用计数等,也有点不适合现代C++的设计思想。这里使用shared_ptr 智能指针改写了“句柄”这一章的程序,明显使代码量下降,而且管理方便。下面来看代码:#include #include using namespace std;class Point{p

2013-05-05 07:53:55 908

原创 类型的代理类(c++)

本文主要讲了C++中代理类的使用方法和使用情况。 所谓代理类,即surrogate.为什么要使用它呢,简单的举个例子. 1 class Vehicle 2 { 3 public: 4 Vehicle(){} 5 virtual string getName()= 0; 6 }: 7 8 class Car : public Vehicle 9 {10 pu

2013-05-05 06:52:10 1488

原创 c c++ register

用register关键字修饰的变量,在C语言中是不可以用&操作符取地址的。因为编译器如果接受了程序员的建议把变量存入寄存器,它是不存在虚拟地址的。但在C++中,用register修饰的变量可以用&操作符取地址,这是我在一段代码中发现的。如果程序中显式取了register变量的地址,编译器一定会将这个变量定义在内存中,而不会定义为寄存器变量。C99指出了The impleme

2013-05-05 04:33:28 6056

原创 Twisted 之 reactor

在 Twisted中,有一个全局用于实现事件循环的对象为reactor。反应器具体的工作包括:定时任务、线程、建立网络连接、监听连接。

2013-05-04 23:56:28 4922

原创 python eval

#coding=UTF-8globals = {'x': 1,\            'y': 2,\            'birds': ['Parrot', 'Swallow', 'Albatross']}locals = {'x':2,\'y':3,\'birds': ['Parrot111', 'Swallow111', 'Albatross111']}a

2013-05-04 23:26:29 1057

转载 Python创建类的时候,是否继承object问题

在python中,创建类可以这样:[html] view plaincopyclass A:        pass  也可以这样:[html] view plaincopyclass A(object):        pass  那么二者有什么区别和联系呢?看

2013-05-04 19:25:22 967

转载 python 迭代器

迭代器Iterators迭代器仅是一容器对象,它实现了迭代器协议。它有两个基本方法:1)next方法返回容器的下一个元素2)__iter__方法返回迭代器自身迭代器可使用内建的iter方法创建,见例子:>>> i = iter('abc')>>> i.next()'a'>>> i.next()'b'>>> i.next()'c'>>> i

2013-05-04 01:57:45 755

转载 python 生成器

生成器是一次生成一个值的特殊类型函数。可以将其视为可恢复函数。调用该函数将返回一个可用于生成连续 x 值的生成器【Generator】简单的说就是在函数的执行过程中,yield语句会把你需要的值返回给调用生成器的地方,然后退出函数,下一次调用生成器函数的时候又从上次中断的地方开始执行,而生成器内的所有变量参数都会被保存下来供下一次使用。示例代码view plainpri

2013-05-04 01:24:54 995

原创 Lua中的元表和元方法

元表可以修改一个值的行为,使其在面对一个非预定义的操作时执行一个指定操作。元方法会检测一个操作中的值是否有元表,以及元表是否定义了操作的元方法。如两个table相加,先检查两者之一是否有元表,之后检查是否有一个叫“__add”的字段,若找到,则调用对应的值。“__add”等字段,其对应的值(一般是一个函数或是table)就是“元方法”。

2013-05-02 20:37:53 2427

转载 python高级数据类型

4.1采用序列组合数据字符串、列表和元组都是Python内置的序列数据类型。序列类型代表一组有序的数据元素,元素类型可为任意类型。列表和元组的区别是可以更改。列表适于管理很多个项,元组适于管理一个项的不同部分。4.1.1创建列表用一个空的方括号即可。>>> x=[] # an empty list可以调用list(seq)函数,将一个序列类型转换为列

2013-05-02 20:04:23 1249

转载 Lua源码分析 -- 虚拟机以及指令解释

Lua首先将源程序编译成为字节码,然后交由虚拟机解释执行.对于每一个函数,Lua的编译器将创建一个原型(prototype),它由一组指令及其使用到的常量组成[1].最初的Lua虚拟机是基于栈的.到1993年,Lua5.0版本,采用了基于寄存器的虚拟机,使得Lua的解释效率得到提升,体系结构与指令系统与虚拟机和指令相关的文件主要有两个: lopcodes.c和lvm.c.从名称可以

2013-05-02 19:01:57 5120

原创 Lua源码分析之对象内存

Lua是动态类型的语言,即是说类型附着于值而不变量[1]. Lua的八种基本类型空,布尔,数值,字符串,表,函数和用户数据.所有类似的值都是虚拟机的第一类值. Lua解释器将其表示成为标签联合(tagged union).如下面代码示例所示:lobject.h : 56/*** Union of all Lua values*/typedef union {

2013-05-02 18:32:06 1709

转载 python 基本数据类型

Dictionary:定义了键和值之间的一对一关系。类似于Java中的HashTable. dict = {"a":"a", "b":"b"}. 通过dict["a"]来引用对应Key的值特性:不能有重复的Key,给一个存在的Key赋值会覆盖掉原来的值。  Dictionary是无序的。  Dictionary的Key对大小写敏感。  在单个Dictionary中可以有多种数据类型。

2013-05-02 18:14:26 785

转载 Python垃圾回收(gc)拖累了程序执行性能?

起因前段时间,在做文本处理的实验时,需要预加载大量的原始数据(100W),在Python中使用的字典(dict)类型负责保存这些数据,很快就开发完成 了一个Demo版,然而程序执行的效率不是那么令人满意,通过使用Python中的profile发现,影响程序执行性能的关键语句就那么几条(用 dict保存加载后原始数据,这是个循环遍历。)解决问题既然找到了问题源,于是就勒起衣袖

2013-05-02 17:49:05 1371 1

转载 Python源码剖析 :内存垃圾回收

Python内存回收的基石是引用计数,“当一个对象的引用被创建或复制时,对象的引用技术加1;当一个对象的引用被销毁时,对象的引用技术减1”,如果对象的引用计数减少为0,将对象的所占用的内存释放。 引用计数的缺点是对循环引用无能为力,优点是将内存释放的操作时机离散化,不会引起瞬间的大波动。Python采用Mark-Sweep算法来解决循环引用问题Mark-Sweep过

2013-05-02 17:44:51 981

原创 游戏客户端之内存管理(cocos2d-x 引用计数)

cocos2dx 里的使用引用计数的对象都是继承CCObject的。引擎里大多数提供的类型是使用引用计数的。可以手动release 和retain,分别是计数减和加如果不想手动释放就调用autorelease,该对象会被放到CCPoolManager 内存管理池的当前的释放池里面(内存管理池里有内存池数组,最后创建的内存池就是当前的内存池)。内存管理池是个单例(CCPoolMa

2013-05-01 07:26:26 1771

空空如也

空空如也

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

TA关注的人

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