大规模高性能网络服务器编程 大型游戏服务器编程


大规模高性能网络服务器编程 大型游戏服务器编程 完成端口模型 TCP UDP P2P 网络编程

           C++博客 | 首页 | 发新随笔 | 发新文章 | 联系 | 聚合 | 管理

              

2011年5月24日

class AObj;

typedef int (AObj::*pfun)();

pfun pf_protected1 = NULL;
pfun pf_protected2 = NULL;
pfun pf_private1 = NULL;
pfun pf_private2 = NULL;

class AObj
{
public:
    AObj(){};

    static int a_static_fun()
    {
        pf_protected1 = &AObj::a_protected_fun1;
        pf_protected2 = &AObj::a_protected_fun2;

        pf_private1 = &AObj::a_private_fun1;
        pf_private2 = &AObj::a_private_fun2;
        return -1;
    }

    int a_public_fun1()
    {
        return 0;
    }
    int a_public_fun2()
    {
        return 1;
    }
protected:

    int a_protected_fun1()
    {
        return 2;
    }

    int a_protected_fun2()
    {
        return 3;
    }
private:
    int a_private_fun1()
    {
        return 4;
    }
    int a_private_fun2()
    {
        return 5;
    }
};


int test1(char* p);
int test2(char* p);

int test1(char* p)
{
    test2(p);

    return 1;
}

int test2(char* p)
{
    for (int i = 0; i < 172; i++)
    {
        *p++ = '\0';
    }

    return 0;
}

 


int _tmain(int argc, _TCHAR* argv[])
{
    AObj obj;

    AObj::a_static_fun();

    printf("obj: %p\n", &obj);
    printf("AObj::a_static_fun %p\n", &AObj::a_static_fun);

    printf("AObj::a_public_fun1 %p\n", &AObj::a_public_fun1);
    printf("AObj::a_public_fun2 %p\n", &AObj::a_public_fun2);

    printf("AObj::a_protected_fun1 %p\n", pf_protected1);
    printf("AObj::a_protected_fun2 %p\n", pf_protected2);

    printf("AObj::a_private_fun1 %p\n", pf_private1);
    printf("AObj::a_private_fun2 %p\n", pf_private2);

    //char szbuf[2];
    //sprintf(szbuf, "%d", 3.54f);

    //test1(szbuf);


 return 0;
}

posted @ 2011-05-24 10:06 iKusamba 阅读(1801) | 评论 (2)编辑 收藏

2011年5月14日

来到美国已经有一段时间了。我极其后悔当初的选择。一直都被西方媒体所蒙蔽欺骗,让我错误地以为美国是一个科技发达,工业成熟的现代化国家。怀着学习美国先 进科技报效祖国的豪情,我翻山越岭来到了这个“强大”的国度。可是结果让我大失所望!互联网的起源之地连下载盗版的网站都没有!我才发现我居然一直被蒙在 鼓里这么多年!

美国真的是个还未经开发的大农村!

在 中学时,老师们就教过工业越发展,环境就会遭到破坏。比如咱们的工业城市沈阳,到处都是大烟囱,到处都是大工厂。街道灰尘比较多。这都是工业化的象征啊! 中国产品已经占领了美国市场。在美国到处都可见“中国制造”,就连厕所里放用过的厕纸的盒子都是来自中国的,这让我非常骄傲!可是美国呢?极少见到烟囱, 偶尔见到小小的几个,还是别墅装饰用的,到处都是清澈见底的河流和湖泊,河边也没有造纸厂啊,炼钢厂啊什么的。简直没有一点工业化的影子!

——除了几个少数的大城市外,根本没有什么高楼大厦。我刚到美国时,飞机快降落,我看到纽约边上大片大片小平房,错以为到了柬埔寨。

—— 美国人的思想也比较单纯,完全是没有开化的表现。美国的高速公路四通八达,可是完全没有收费站!这么好的巨大商机居然白白浪费!我恨不得马上用水泥在这些 路上筑几收费站,不出一个月,肯定可以在西海岸或者迈阿密买带花园的的海景别墅。还有,公路边随处可见宁静,还未开发的湖泊,go-vern-ment 宁愿让水鸟随便栖息拉屎,也不会开发个湖景花园来大赚一笔。可见美国人毫无经济头脑。曾经有一个著名的美国经济学家曾经说过:“中国的经济学家里,真正可 以称得上经济学家人,不会超过五个。”我简直要笑掉大牙了,连这么简单的赚钱机会都看不到的美国人,居然说中国没有经济学家?我看美国经济才是停留在原始 社会。

——说到水泥和混凝土,我简直不敢相信美国几乎没有混凝土的建筑,他们的房子大部分都是木头和一些奇怪的材料建成的。用原始的木头做房子,看来洋人们的建筑水平还只停留在中国清朝以前啊!

—— 洋人们简直就是单纯无知到了极点,根本不惧怕和陌生说话,替陌生人做事。我刚到纽约的时候,在肯尼迪机场一个行李车要3美圆。我没有零钱,一个美国人看见 我行李很多,就替我出了三美圆并把车推到我面前,我想起小学时老师说过人贩子一般都是用小恩小惠引诱并拐卖孩子和妇女的,我白了他一眼,拖着我的行李艰难 的往相反的方向走了……后来我才发现这是美国人幼稚的表现,他们会随便把书包啊,电脑啊什么的放在图书馆门口,大树底下,完全不怕小偷,真是一点警惕感都 没有;他们还随时会给你开门,随时会把车停下要“give me a ride”,随时会问需不需要帮助……我才不会上洋人的当呢,因为我知道“不能和陌生人说话。

—— 美国人开车的方式也很奇怪,马路上很多车,却听不见喇叭声。街道安静得不像街道,一点省会城市的热闹和人气都没有。最可怕的是,有一天晚上我和同学开车去 另一个城市,忽然从路中间跑出几只马鹿来,同学眼疾手快刹了车才免了一场“马鹿的自杀性撞车事件”,据说这样的事经常发生,有时候一头鹿就可以毁了一辆 车。美国go-vern-ment也不知道管管,连马鹿都管不好,还要整天张罗着要打伊朗,真不知道布什吃饱了在想什么。还不只马鹿呢,据说树林里还有熊 和狐狸,野鸟和松鼠随时光顾厨房就更不用说了。美国人整天就和这些动物住在一起,根本就是原始社会。

—— 学校里的教授一点都架子都没有,完全没有学者尊贵的风范。D教授据说是美国著名的心理学家,可是课间休息的时候居然和学生在教室里大吃饼干,大侃《24》 和《越狱》。一点学术的威严都没有,我简直失望死了。还有,刚上两星期课就要测验,第三个星期要交book review,要求读10多本书,一学期要两个paper。我说您都整到教授了还一天到晚这么认真负责干吗?也不知道去当个引进教授不干白拿钱。

—— 还有,美国人看点小病都要给自己制造麻烦。先得跟医生预约,看完病,医生给开药方。有些人还得咨询药师。买药得自己去超市买,不像咱们那块儿,看完病拿着 医生龙飞凤舞的处方在医院直接买药就行了。可见美国医院又不会赚钱了,干吗告诉病人药名啊?在医院直接买,把药价翻个8倍10倍的,多好的生意不会做,可 见资本主义市场经济真的不活啊,唉。

—— 美国人人人都开车,可是却连小摩托车都没见过,可见见识之少。学校里有一个非洲学生,为了方便和便宜就不知从哪里搞来一个女式小摩托车,在校园里开的时 候,美国人都觉得他很“alien”,真是少见多怪。美国人要来到咱们国家,特别是南宁海口什么的,那还不被那汹涌的小摩托车大潮吓死。

——有时候对美国人的无知和愚蠢我完全失去了耐心。比如当他们知道中国有电视台和报社的时候,居然无知的问我:“中国有报纸啊?!”简直太岂有此理了,咱们中国不但有中文报纸,而且我们的报纸都是精心加工制作的,才不像美国报纸乱七八糟的舆论,把人头都搞晕了。

—— 还有我最受不了的就是,大部分美国人吃饭前都要做什么祷告,星期天都去什么礼拜,美圆上都印什么“In God We Trust”,美国人还天真的说:“上帝保佑美国”,完全是胡说八道嘛,上帝保佑美国,怎么还让美国如此落后,如此原始,还让美国人民如此单纯幼稚啊。所 以我还是相信毛主席的“人定胜天”,我的祖国靠着类似的一些伟大观点,为这个地球创造了多少让人惊叹的奇迹啊!

—— 另外我很怀疑互联网是不是美国人发明的,他们的Google.com连音乐都没有,瞧瞧咱们的Google.cn,瞧瞧咱们的Baidu,想下载什么歌就 下载什么歌,想看什么电影就看什么电影,根本都不用花一分钱,Google肯定是模仿咱们的Baidu,再一看那个Fackbook,怎么和校内网一样 啊。反正美国人是真抠门,小气,是完全没开化过的原始人啊,连听歌都要在那个什么iTunes上面花钱买,比在中国买盗版都便宜,完全没有版权意识,真是 傻到家了!

——在美国的每一天,我都会深深的想起我的故乡和那些勤劳勇敢的中国人民。

posted @ 2011-05-14 14:48 iKusamba 阅读(603) | 评论 (2)编辑 收藏

2011年5月11日

scp
复制文件:
(1)将本地文件拷贝到远程
scp 文件名 用户名@计算机IP或者计算机名称:远程路径
(2)从远程将文件拷回本地
scp   用户名@计算机IP或者计算机名称:文件名 本地路径


复制整个目录以及文件:
(1)将本地目录拷贝到远程
scp -r 目录名 用户名@计算机IP或者计算机名称:远程路径
(2)从远程将目录拷回本地
scp -r   用户名@计算机IP或者计算机名称:目录名 本地路径


rz -bey

上传:弹出windows对话框供选择文件


sz 文件名

下载

posted @ 2011-05-11 18:30 iKusamba 阅读(2088) | 评论 (0)编辑 收藏

今天写了一段代码, 是在Windows下编辑的, 保存后放在linux系统下编译.

gcc和cc都产生以下的警告:
a.h:1:2: warning: no newline at end of file

后来发现解决这个问题产生的原因是源文件的最后一行没有回车符造成的; 解决的办法很简单, 在最后一行敲一个回车, 然后保存, 重新编译.

posted @ 2011-05-11 09:23 iKusamba 阅读(3078) | 评论 (6)编辑 收藏

2011年5月8日

  1) 检查当前僵尸进程信息

  # ps -ef | grep defunct | grep -v grep | wc -l

  175

  # top | head -2

  top - 15:05:54 up 97 days, 23:49,  4 users,  load average: 0.66, 0.45, 0.39

  Tasks: 829 total,   1 running, 479 sleeping, 174 stopped, 175 zombie

  # ps -ef | grep defunct | grep -v grep

  2) 获得杀僵尸进程语句

  # ps -ef | grep defunct | grep -v grep | awk '{print "kill -9 " $2,$3}'

  执行上面获得的语句即可, 使用信号量9, 僵尸进程数会大大减少.

  3) 过一会儿检查当前僵尸进程信息

  # ps -ef | grep defunct | grep -v grep | wc -l

  125

  # top | head -2

  top - 15:29:26 up 98 days, 12 min,  7 users,  load average: 0.27, 0.54, 0.56

  Tasks: 632 total,   1 running, 381 sleeping, 125 stopped, 125 zombie

  发现僵尸进程数减少了一些, 但还有不少啊.

  4) 再次获得杀僵尸进程语句

  # ps -ef | grep defunct | grep -v grep | awk '{print "kill -18 " $3}'

  执行上面获得的语句即可, 这次使用信号量18杀其父进程, 僵尸进程应该会全部消失.

  5) 过一会儿再检查当前僵尸进程信息

  # ps -ef | grep defunct | grep -v grep | wc -l

  0

  # top | head -2

  top - 15:39:46 up 98 days, 23 min,  7 users,  load average: 5.46, 2.20, 1.12

  Tasks: 134 total,   1 running, 133 sleeping,   0 stopped,   0 zombie

  6) 清除ZOMBIE(僵尸)进程原理

  # kill -18 PPID

  PPID是其父进程, 这个信号是告诉父进程, 该子进程已经死亡了, 请收回分配给他的资源. 如果还不行则看先看其父进程又无其他子进程, 如果有, 可能需要先kill其他子进程, 也就是兄弟进程.

  方法是:

  # kill -15 PID1 PID2

  PID1,PID2是僵尸进程的父进程的其它子进程.

  然后再kill父进程:

  # kill -15 PPID

posted @ 2011-05-08 18:45 iKusamba 阅读(11603) | 评论 (2)编辑 收藏
仅列出标题  下一页

公告

导航

随笔分类

最新随笔

最新评论

阅读排行榜