- 博客(115)
- 资源 (3)
- 问答 (4)
- 收藏
- 关注
转载 同步/异步,阻塞/非阻塞
一、同步与异步同步/异步, 它们是消息的通知机制1. 概念解释A. 同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。最常见的例子就是 SendMessage。该函数
2015-01-29 16:53:01 676
转载 close和shutdown函数
1.close()函数[cpp] view plaincopyprint?"font-size:13px;">#include int close(int sockfd); //返回成功为0,出错为-1. close 一个套接字的默认行为是把套接字标记为已关闭,然后立即返回到调用进程,该套接字描述符不能再由调用进程
2015-01-14 16:19:29 753
转载 getrlimit,setrlimit函数
1,在Linux系统中,Resouce limit指在一个进程的执行过程中,它所能得到的资源的限制,比如进程的core file的最大值,虚拟内存的最大值等。Resouce limit的大小可以直接影响进程的执行状况。其有两个最重要的概念:soft limit 和 hard limit。struct rlimit {rlim_t rlim_cur; //代表软限制rlim
2015-01-12 22:04:06 967
转载 MD5码
1,MD5是一种加密方法。通过对一段信息码加密后,可以生成固定长度(128bit)的MD5码。该MD5码理论上来说应该是全球唯一的。2,算法原理。1),填充编码。在MD5算法中,首先需要对信息进行填充,使其位长对512求余的结果等于448。因此,信息的位长(Bits Length)将被扩展至N*512+448,N为一个非负整数,N可以是零。填充的方法如下,在信息的后面填充一个1和无数个0,直到
2015-01-09 19:39:51 7555
原创 单例模式
单例模式是指:在全局范围内,保证一个类只能有一个实例。c++的实现方法:1,构造函数必须是private,保证不可以在类外通过构造函数创建新的对象;2,通过static成员来创建实例;例子:class CSingleton{private: CSingleton() //构造函数是私有的 { } static CSingleton *m_pInstance;publi
2015-01-08 19:27:50 557
转载 popen system exec函数
C/C++程序调用shell命令可以通过以下函数实现: FILE *popen(const char *command, const char *mode); popen()会调用fork()产生子进程,然后从子进程中调用/bin/sh -c来执行参数command的指令。参数mode可使用r代表读取,w代表写入。依照mode值,popen()会建立管道连接到子进程的标准输出
2015-01-07 22:13:07 1252
转载 c语言中time函数的用法
头文件time.h @函数名称: localtime 函数原型: struct tm *localtime(const time_t *timer) 函数功能: 返回一个以tm结构表达的机器时间信息 函数返回: 以tm结构表达的时间,结构tm定义如下: [cpp] view plaincopy
2015-01-06 16:20:43 1619
转载 vim精确匹配
精确匹配查找单词如果你输入 "/the",你也可能找到 "there"。要找到以 "the" 结尾的单词,可以用:/the\> "\>" 是一个特殊的记号,表示只匹配单词末尾。类似地,"\这样,要匹配一个完整的单词 "the",只需:/\
2015-01-05 17:25:16 12350 1
转载 git 学习教程
第一课. git简介内容:什么是git,为什么要使用git以及获取和学习git的途径。 欢迎来到github学习教程的第一课。本教程将通过一系列的实例来介绍如快速,轻松地使用Git。教程中会有很多屏幕截图,希望这样可以让你更好的学习和理解。本节简要介绍git的概念和为什么应该使用它 git是一个快速,开源,分布式的版本控制系统。
2014-10-29 10:09:46 1560
转载 git push错误;fatal: The remote end hung up unexpectedly
在ubuntu10.04终端上 执行以下命令:[html] view plaincopygit clone git://XXX XXX是源码路径,将git上的代码拷贝下来,然后分别执行:git commit和git push命令。执行git push之后,终端上直接输出一下错误:[html] view
2014-10-29 09:17:49 1079
转载 .gitignore
git 可以管理所有文件的变更, 但并不是所有文件都有意义。大部分二进制文件没有意义 比如说 VC 工程的 Debug 和 Release 文件夹下的文件, 或者 java 项目的 bin 文件夹中的 class 文件, 这些文件都是基于源代码生成的, 只要有源代码就能生成出来,所以版本管理的时候应该忽略它们。有些文本文件也没有意义 比如说 VC 工程中的
2014-10-28 20:08:09 543
转载 linux awk命令详解
简介awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。awk其名称得自于它的创始人 Alfr
2014-10-24 17:13:50 513
转载 sed命令详解
转载:http://blog.chinaunix.net/u/22677/showart_1076318.html1.简介sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模
2014-10-24 15:53:13 636
转载 grep与正则表达式
虽然正则表达式经常都在用,但是很少能够静下心来仔细的总结一下。最近看了一个台湾人的网站叫做鸟哥Linux私房菜,关于正则表达式的描述挺详细的。在此,我进行一下总结,如果想仔细的学习正则表达式,请访问鸟哥Linux私房菜,台湾同胞的网站是繁体中文的,需要点儿耐心。 正则表达式只是字符串的一种描述,只有和支持正则表达式的工具相结合才能进行字符串处理。本文以grep为例来讲解正则表达式。
2014-10-24 14:31:32 527
转载 epoll两种监听模式
Edge Triggered 工作模式: 如果我们在第1步将RFD添加到epoll描述符的时候使用了EPOLLET标志,那么在第5步调用epoll_wait(2)之后将有可能会挂起,因为剩余的数据还存在于文件的输入缓冲区内,而且数据发出端还在等待一个针对已经发出数据的反馈信息。只有在监视的文件句柄上发生了某个事件的时候 ET 工作模式才会汇报事件。因此在第5步的时候,调用者可能会放弃等待仍在存
2014-09-17 22:46:36 996
转载 fork注意
前两天有人问了个关于Unix的fork()系统调用的面试题,这个题正好是我大约十年前找工作时某公司问我的一个题,我觉得比较有趣,写篇文章与大家分享一下。这个题是这样的:题目:请问下面的程序一共输出多少个“-”?1234567891011121314
2014-09-12 18:29:53 510
转载 Shell排序
刚才在CSDN的C语言板块看到了有人说Shell排序的问题,所以一起学习了一下,并进行如下总结shell排序的思想是根据步长由长到短分组,进行排序,直到步长为1为止,属于插入排序的一种。下面用个例子更好的理解一下无序数列: 32, 43,56,99,34,8,54,761.首先设定gap=n/2=4于是分组32,34 排序 32,3443, 8
2014-09-12 18:09:23 507
转载 抽象类与接口的区别及应用
抽象类与接口的区别及应用(本文由张洋提供)抽象类(Abstract Class)与接口(Interface)是面向对象程序设计中两个重要的概念。由于两者在自身特性及应用方法上存在诸多相似性,如都不能实例化、都可以被继承(严格来说对于接口应该叫做实现),这么一来,在许多人心中抽象类与接口的界限非常模糊,对何时该使用抽象类、何时该使用接口更是感到困惑。本文的目的是通过对两者的讨
2014-09-11 16:54:24 566
转载 HTTP返回码总结
HTTP协议状态码表示的意思主要分为五类 ,大体是 : ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1×× 保留 2×× 表示请求成功地接收 3×× 为完成请求客户需进一步细化请求 4×× 客户错误 5×× 服务器错误 100 Continue指示客户端应该继续请求。回送用于通知客户端
2014-08-26 20:32:16 389
转载 Linux下的IPC-UNIX Domain Socket
一、 概述UNIX Domain Socket是在socket架构上发展起来的用于同一台主机的进程间通讯(IPC),它不需要经过网络协议栈,不需要打包拆包、计算校验和、维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进程。UNIX Domain Socket有SOCK_DGRAM或SOCK_STREAM两种工作模式,类似于UDP和TCP,但是面向消息的UNIX Domain Soc
2014-08-24 15:38:48 600
转载 leetcode之Clone Graph
题目大意:Clone an undirected graph. Each node in the graph contains a label and a list of itsneighbors.OJ's undirected graph serialization:Nodes are labeled uniquely.We use # as a separator
2014-08-07 17:52:20 430
原创 leetcode之Word Break II
题目大意:Given a string s and a dictionary of words dict, add spaces ins to construct a sentence where each word is a valid dictionary word.Return all such possible sentences.For example, given
2014-08-07 16:20:27 514
原创 leetcode之Copy List with Random Pointer
题目大意:A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null.Return a deep copy of the list.意思就是:
2014-08-07 16:13:14 559
转载 list::splice()函数详解
list::splice实现list拼接的功能。将源list的内容部分或全部元素删除,拼插入到目的list。函数有以下三种声明:void splice ( iterator position, list& x ); // void splice ( iterator position, list& x, iterator i );void splice ( iterator po
2014-08-06 21:57:25 651
原创 leetcode之Binary Tree Level Order Traversal II
题目大意:Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root).For example:Given binary tree {3,9,20,#,#,
2014-08-01 11:27:28 657
原创 leetcode之Binary Tree Level Order Traversal
题目大意:Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level).For example:Given binary tree {3,9,20,#,#,15,7}, 3 / \ 9
2014-08-01 11:24:02 483
原创 leetcode之Convert Sorted Array to Binary Search Tree
题目大意:Given an array where elements are sorted in ascending order, convert it to a height balanced BST.意思就是:同Convert Sorted List to Binary Search Tree,只是把
2014-08-01 11:17:33 512
原创 leetcode之Convert Sorted List to Binary Search Tree
题目大意:Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.意思就是
2014-08-01 11:12:12 530
原创 leetcode之Balanced Binary Tree
题目大意:Given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees ofevery node nev
2014-08-01 10:55:44 512
原创 leetcode之Minimum Depth of Binary Tree
题目大意:Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.意思就是:给定一棵二叉树,找到它的最短
2014-08-01 10:50:37 515
原创 leetcode之Path Sum II
题目大意:Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given sum.For example:Given the below binary tree and sum = 22, 5 /
2014-08-01 10:43:51 511
原创 leetcode之Flatten Binary Tree to Linked List
题目大意:Given a binary tree, flatten it to a linked list in-place.For example,Given 1 / \ 2 5 / \ \ 3 4 6The flattened tree should look like: 1
2014-07-29 17:36:12 478
原创 leetcode之Distinct Subsequences
题目大意:Given a string S and a string T, count the number of distinct subsequences ofT in S.A subsequence of a string is a new string which is formed from the original string by deleting some (ca
2014-07-29 17:33:08 607
原创 leetcode之Populating Next Right Pointers in Each Node
题目大意:Given a binary tree struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *next; }Populate each next pointer to point to its next right nod
2014-07-29 17:04:45 552
转载 select和epoll
select:1,select有数量限制,该函数调用可以操作的文件描述符有最大数量的限制,FD_SETSIZE决定,内核mor
2014-07-15 21:04:18 582
转载 遗传算法
遗传算法 ( GA , Genetic Algorithm ) ,也称进化算法 。 遗传算法是受达尔文的进化论的启发,借鉴生物进化过程而提出的一种启发式搜索算法。因此在介绍遗传算法前有必要简单的介绍生物进化知识。 一.进化论知识 作为遗传算法生物背景的介绍,下面内容了解即可: 种群(Population):生物的进化以群体的形式进行,这样的一个群体称
2014-06-18 20:05:44 1121
lua设置非全局变量,设置当前环境变量相关问题
2016-04-20
求关于lua尾调用概念疑问
2016-04-11
lua初学者 关于local函数的一个问题
2016-04-11
lua类型相关,一个lua初学者的疑问
2016-04-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人