自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mali_xiangzi的专栏

专注于Linux后台服务器相关技术

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

原创 Android学习笔记

1. View背景的比较相等用:if (eENickLinearLayout.getBackground().getConstantState().equals(RegisterActivity.this.getResources().getDrawable(R.drawable.register_exception_bg).getConstantState()) == true) {

2013-06-21 17:11:55 690

原创 iOS OC类型和C类型相互转换

http://blog.csdn.net/shencaifeixia1/article/details/8147117__bridge:不涉及对象所有关系改变__bridge_transfer:给予 ARC 所有权__bridge_retained:解除 ARC 所有权形式:(__bridge type)expression;(__bridge_retained C

2013-05-30 13:09:11 958

转载 iOS的代理(委托设计模式)和分类

转自:http://blog.csdn.net/littlecat0_0/article/details/8592323问题:Object-C有多继承吗?没有的话用什么代替?Category是什么?重写一个类的方式用继承好还是分类好?为什么?OC没有多继承,例如下面的代码,肯定必须报错的。其实OC也有类似java的多继承,就是委托delegate和协议protocol。

2013-05-16 14:39:21 770

转载 iOS block学习

下面这个链接写的block不错。http://lldong.github.io/blog/2011/12/30/blocks/转自:http://blog.csdn.net/yhawaii/article/details/7556739iOS4已经直接支持blocks,很有必要学习一下。在ios,blocks是对象,它封装了一段代码,这段代码可以在任何时

2013-05-13 22:35:24 517

原创 iOS学习笔记

比较好的和基础的博客:(1)http://blog.csdn.net/linux_zkf(2)1. [panGesture requireGestureRecognizerToFail: swipeGesture]; 该函数主要时让panGesture失败,当遇到swipeGesture手势时,只有当swipeGesture失败的时候,才去识别panGesture。为了防止同一个v

2013-05-13 14:55:50 1275

转载 Linux下线程池的设计

链接:http://www.360doc.com/content/12/0407/13/1317564_201653082.shtml

2013-04-14 10:19:03 513

转载 nginx源码学习----内存池

转自:http://www.cnblogs.com/xiekeli/archive/2012/10/17/2727432.html本人的理解:内存管理的主要目的是(1)减少内存碎片;(2)减少缺页中断次数;(3)减少内存泄露。第一篇Nginx的内存池实现得很精巧,代码也很简洁。总的来说,所有的内存池基本都一个宗旨:申请大块内存,避免“细水长流”。一、创建一个内存池

2013-04-12 12:08:12 569

转载 Nginx源码分析-Epoll模块

转自:http://blog.csdn.net/marcky/article/details/6069958Linux平台上,Nginx使用epoll完成事件驱动,实现高并发;本文将不对epoll本身进行介绍(网上一堆一堆的文章介绍epoll的原理及使用方法,甚至源码分析等),仅看一下Nginx是如何使用epoll的。 Nginx在epoll模块中定义了好几个函数,这些函数

2013-04-10 14:55:19 434

转载 linux下c/c++ 常用时间和字符串互相转化介绍

c/c++ 中经常会遇到时间和字符串互相转化的情形用以下2个函数来转就很方便了1、时间转字符串函数size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);2、字符串转时间函数char *strptime(const char *s

2013-04-08 15:43:52 925

转载 线程中的条件变量pthread_cond_wait、pthread_cond_signal

来自:http://blog.csdn.net/eroswang/article/details/5769346条件变量条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待 "条件变量的条件成立 "而挂起;另一个线程使 "条件成立 "(给出条件成立信号)。为了防止竞争,条件变量的使用总是和一个互斥锁结合在一起。1.创建和注销

2013-04-08 15:26:53 494

转载 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值

来自:http://blog.csdn.net/eroswang/article/details/56425501、阻塞模式与非阻塞模式下recv的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞recv返回值没有区分,都是 0接收到数据大小,特别:返回值 2、阻塞模式与非阻塞模式下write的返回值各代表什么意思?有没有区别?阻塞与非阻塞wri

2013-04-08 15:20:07 516

转载 两种高性能I/O设计模式(Reactor/Proactor)的比较

综述这篇文章探讨并比较两种用于TCP服务器的高性能设计模式. 除了介绍现有的解决方案, 还提出了一种更具伸缩性,只需要维护一份代码并且跨平台的解决方案(含代码示例), 以及其在不同平台上的微调. 此文还比较了java,c#,c++对各自现有以及提到的解决方案的实现性能.系统I/O 可分为阻塞型, 非阻塞同步型以及非阻塞异步型. 阻塞型I/O意味着控制权只到调用操作结束了才会回到调用者手里.

2013-04-08 15:09:39 497

转载 并发网络服务程序---架构设计关注点

转自:http://hi.baidu.com/yenoeepfqabiyzq/item/b14ee0e0cdbfe52b5a7cfb6c这里的并发网络服务程序,指的是类Unix平台的后台程序(7*24小时不间断提供服务)设计的出发点:第一,网络模型,epoll的事件触发机制,reactor还是Proactor,其实都差不多啦第二,单线程还是多线程

2013-04-08 14:31:12 732

转载 谈mutex的使用和线程安全、可重入

mutex用于多线程或者多进程之间对临界资源的访问互斥,在具体应用中,一般倾向于,一遇到资源竞争情况,就考虑用mutex,可是,mutex会大大降低程序的并发。因此,应该慎重: 第一,避免用mutex,例如可以改用单线程程序第二,迫不得已,尽可能使mutex的临界区短小,也就是说,尽可能晚lock,早unlock,减小锁的粒度第三,可以考虑读写锁

2013-04-08 13:59:53 3592

转载 C++多进程并发框架

struct lambda_t {  static void callback(echo_t::out_t& msg_) {    echo_t::in_t in;    in.value = "XXX_echo_test_XXX";    singleton_t::instance() .get_service_group("echo") ->get_serv

2013-04-08 12:41:14 915

转载 腾讯后台开发技术总监浅谈过载保护 小心雪崩效应

本文转自:http://www.mysqlops.com/2012/05/10/protect.html摘要: 每个系统,都有自己的最大处理能力,后台技术人员对此必须很清楚,且要注意自我保护,不然就会被雪球压垮,出现雪崩。雪球:     对于时延敏感的服务,当外部请求超过系统处理能力,如果系统没有做相应保护,可能导致历史累计的超时请求达到一定规模,像雪球一样形成恶性循环。由于系

2013-04-08 12:34:48 698

转载 POLL, SELECT & EPOLL 原理比较分析

原文出处:http://www.cnblogs.com/sharra/archive/2010/12/30/1921287.html因为需要了解底层设备访问的原理,所以惯用高层应用语言的我,需要了解一下Linux的设备访问机制,尤其是处理一组非阻塞IO的原理方法,标准的术语好像是叫多路复用。以下文章部分句子有引用之处,恕没有一一指出出处。 对于接触过Linux内核或设备驱动开发

2013-04-07 18:16:12 427

转载 boost::shared_ptr递归调用解决办法--boost::enable_shared_from_this

用处:boost::enable_shared_from_this主要用于类中递归使用shared_ptr来管理本类。下面转自:http://monkeycn.iteye.com/blog/1135901使用情景:当类对象被 shared_ptr 管理时,需要在类自己定义的函数里把当前类对象作为参数传给其他函数时,这时需要传递一个 shared_ptr ,否则就不能保持 share

2013-04-07 17:14:57 948

转载 对select和epoll的理解

本文转自:http://blog.csdn.net/liangkwok/article/details/6764206?1364867860http://blog.csdn.net/eroswang/article/details/4481521从man手册中,得到ET和LT的具体描述如下EPOLL事件有两种模型:Edge Triggered (ET)Level

2013-04-02 12:36:03 688 1

转载 搭建一个后台服务器--服务端(异步,大并发)

本文转自:http://blog.csdn.net/xiaofei_hah0000/article/details/8743627阻塞模式下服务器的并发只有几K,而真正的server 像nginx, apache, yumeiz 轻轻松松处理几万个并发完全不在话下,因此大并发的场合下是不能用阻塞的。1W的并发是一个分隔点,如果单进程模型下能达到 的话,说明至少在服务器这块你已经很厉

2013-04-02 03:22:43 1113

转载 动态链接和静态链接

本文转自:http://blog.csdn.net/xiaoyangger/article/details/5489875理解静态链接和动态链接 前些日子在论坛上看到这样两个问题:1、什么叫静态链接和动态链接?(static linking,dynamic linking) 2、如何理解先期和迟后联编?(early binding,later binding)3、连

2013-03-31 12:11:25 527

转载 MySql学习

本文转自:http://blog.csdn.net/xiaoyangger/article/details/8476175MYSQL入门学习之一:基本操作 1、登录数据库    www.2cto.com      命令:mysql -u username –p (mysql -h主机地址 -u用户名 -p用户密码)    描述:输入命令回车,即可输入密码了。密码验证通过

2013-03-31 12:06:58 461

原创 一个学习sed和awk的网站(非常好)

http://www.tsnc.edu.cn/default/tsnc_wgrj/doc/abs-3.9.1_cn/html/sedawk.html

2013-03-30 01:04:56 1119

转载 Grep学习笔记

本文转自:http://man.chinaunix.net/newsoft/grep/open.htm1. grep简介grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来

2013-03-30 00:54:05 334

转载 Linux Shell 编程 [精华]

转自: http://www.cnblogs.com/stephen-liu74/archive/2011/11/01/2202027.htmlhttp://www.cnblogs.com/stephen-liu74/archive/2011/11/04/2228133.html一本深入学习shell的书籍/* http://www.tsnc.edu.cn/default/ts

2013-03-23 14:31:41 863

转载 新C++标准:C++0x教程(三):面向所有开发者的特性(中)

本文转载自:雨润的技术博客 http://blog.csdn.net/sunyurun这些是Scott Meyers培训教程《新C++标准:C++0x教程》的官方笔记,培训课程的描述请见 http://www.aristeia.com/C++0x.html,版权信息请见http://aristeia.com/Licensing/licensing.html.漏洞和建议请发送

2013-03-23 11:39:29 469

转载 新C++标准:C++0x教程(二):面向所有开发者的特性(上)

译者:yurunsun@gmail.com本文转自:雨润的技术博客 http://blog.csdn.net/sunyurun原作:Scott Meyers1. ">>" 作为嵌套模板的结尾当可能时,">>"作为嵌套模板的结尾:std::vector> vi1; // fine in C++0x, error in C++98在C++

2013-03-22 22:55:12 574

转载 分布式系统原理要点

本文转载自:雨润的技术博客 http://blog.csdn.net/sunyuru0. 前言本文是在百度公司刘杰先生创作的《分布式系统原理介绍》一书基础上,整理的要点笔记。一则在整理过程中加深记忆,二来作为一个简洁的备忘录。如有版权问题请联系本人删除。1. 分布式系统相关概念1.1 模型1.1.1 节点节点是一个可以独立按照分布式协议完成一组逻辑的程序

2013-03-22 15:29:25 843

转载 深入linux网络编程(四):使用asio搭建商用服务器

本文转自:雨润的技术博客 http://blog.csdn.net/sunyurun1. 背景介绍1.1 什么是asio2012年从5月份开始我主持了webyy服务器项目(http://www.yy.com/webyy.html),项目中没有按照惯例使用公司既有的基于epoll的网络框架,而是尝试了C++ tr2标准中的实验网络库asio,无论从开发效率、程序性能、

2013-03-22 13:14:54 911

转载 深入linux网络编程(三):异步阻塞IO —— epoll

本文转自:雨润的技术博客 http://blog.csdn.net/sunyurun1. epoll的优越性上一节介绍的select有几个缺点:存在最多监听的描述符上限FD_SETSIZE每次被唤醒时必须遍历才能知道是哪个描述符上状态ready,CPU随描述符数量线性增长描述符集需要从内核copy到用户态这几个缺点反过来正是epoll的优点,或者说epoll就是

2013-03-22 11:48:45 485

转载 深入Linux网络编程(二):异步阻塞IO----select

本文转载自:雨润的技术博客 http://blog.csdn.net/sunyurun1. 异步阻塞IO当从一个描述符读,写到另一个描述符时,可以在下列形式的循环中使用阻塞IO:while ((n = read(STDIN_FILENO, buf, BUFSIZ)) > 0) if (write(STDOUT_FILENO, buf, n) != n)

2013-03-22 11:37:44 475

转载 深入linux网络编程(一):同步IO

本文转自雨润的技术博客 http://blog.csdn.net/sunyurun1. IO模型IO分为同步、异步,阻塞、非阻塞,两两组合成4种模型。2. 同步阻塞IO2.1 阻塞的原因一个常见的问题是IO对请求没有准备好:例如调用读请求的时候可能设备上没有数据,但是将来可能有;调用写请求时可能舍妹没有准备好接收数据,一会儿可能buffer清空就好了。调用过

2013-03-22 11:31:40 500

转载 boost::pool

boost::pool与内存池技术转自:http://www.cnblogs.com/hujian/archive/2009/07/10/1520233.html        Boost库的pool提供了一个内存池分配器,用于管理在一个独立的、大的分配空间里的动态内存分配。Boost库的pool主要适用于快速分配同样大小的内存块,尤其是反复分配和释放同样大小的内存

2013-03-21 12:28:36 601

原创 读书有感

最近读了不少和专业有关的一些书,有感而发:程序员在写代码的过程中,应当多考虑设计(设计模式),设计和编码缺一不可。这样才能开发出好的程序。

2013-03-21 12:00:39 364

转载 技术精英谈IT程序员的出路在哪里——很经典

从我做小程序员开始,就从未间断的在论坛看到有人在问程序员的出路在哪里,其实我很能理解这些人的想法,在行业做了几年,有些感想跟大家随便聊聊。俗话说,365行,行行出状元,此话也适用于IT行业,尤其是程序员。当你迷茫找不到出路,又想快速成长和提高的时候,有两种方案可以供你参考:1、努力成为你工作环境中最优秀的人(技术最好的人);2、跳槽,去另外一家公司做比你能力要高的工作。

2013-03-21 08:17:18 644

转载 十个让你变成糟糕的程序员的行为

摘要:本文来自网络,内容是作者认为的糟糕程序员所以具有的几个的特点,作者把这些特征都列举下来,对我们有一定的启发作用。之前本站发表过《优秀程序员的十个习惯》以及《程序员需要具备的基本技能》,那是我们需要去学习和培养的。这里,我们主要讨论十个糟糕程序员的特征,主要是需要让我们去避免和小心的。情绪化的思维如果你开始使用不同颜色的眼光来看待这个世界的话,那么你可能会成为一个很糟糕

2013-03-20 12:19:44 371

原创 Ubuntu下使用迅雷看看

从网上找的方法,已经通过本人的验证,可用。1. 使用firefox浏览器,可以直接使用User Agent Switcher选择iphone即可,没有这个插件,就下载一个,很容易的。2. 使用chrome, 可以在没一个打开的迅雷看看上的电影或电视剧网址后面加上?id=731028。即可,如:    http://vod.kankan.com/v/60/60314.shtml,这个在U

2013-01-03 10:56:30 1121

转载 不错的算法网站

http://blog.csdn.net/column/details/arithmetic.html

2012-08-10 11:10:07 213

转载 软件史上最伟大的十大程序员

国际:软件史上最伟大的十大程序员(图文)2007.11.08  来自:CSDN   呐不喊   共有评论(0)条 发表评论    收藏国际消息,国外某社区网站就“软件史上最伟大的十大程序员”做了一个评选,结果如下:国际消息,国外某社区网站就“软件史上最伟大的十大程序员”做了一个评选,结果如下:1,John Carmack(约翰.卡马克)J

2012-08-04 11:44:23 570

原创 关于C/C++的求值顺序问题

C/C++程序中的表达式中的求值顺序问题:除了&&、||、?:、,这4个运算符的求值顺序是定的,其他的都未定,一般情况下,如果左右操作数会影响另外一个操作数的话,就不要把他们写到同一个表达式中,这是未定义的行为,和编译器相关的。

2012-07-25 16:54:13 374

空空如也

空空如也

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

TA关注的人

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