自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Android Fans

一个热爱Android,linux开源技术的人,简单,普通,但是不平凡。

  • 博客(16)
  • 资源 (2)
  • 问答 (3)
  • 收藏
  • 关注

原创 并发服务器的实现(进程与线程)

总体来说,服务器的运行模式大体有两类:循环服务器和并发服务器。所谓的循环服务器就是说他给客户端提供的服务时一个接着一个的,不能同时服务,也就是说当一个用户使用服务器的时候,其他用户不没能使用只能等待。这显然不符合实际服务器的要求,而并发服务器就可以很好地解决这个问题。并发服务器能够同时为多个客户端服务,同时并发服务的能力是服务器性能的一个重要指标。并发服务器的实现总体有以下几种方法:① 服

2013-09-27 22:01:33 2231

转载 关于select函数中timeval和fd_set重新设置的问题

select原型: int select(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); 和select模型紧密结合的四个宏:FD_CLR(int fd, fd_set *set);FD_ISSET(int fd, fd_set *set);FD

2013-09-26 10:52:27 2121

原创 64位linux中使用inet_ntoa报错处理

最近一直使用linux mint 15,我用的是64位操作系统,在进行网络编程的时候,发现一个问题,请看源码:/*get_ip_by_name.c*/#include #include #include #include #include #include int main(int argc,char *argv[]){ struct hostent *h; i

2013-09-25 15:17:06 2144

转载 linux网络编程必看书籍

首先要说讲述计算机网络和TCP/IP的书很多。 先要学习网络知识才谈得上编程讲述计算机网络的最经典的当属Andrew S.Tanenbaum的《计算机网络》第五版,这本书难易适中。《计算机网络(第5版)》是国内外使用最广泛、最权威的计算机网络经典教材。目前已经是第五版,本书作者80年代就开发出MINIX,是一个用于操作系统教学的类UNIX(的小型操作系统。而

2013-09-22 15:46:34 1334

原创 线程实现生产者消费者实验

生产者消费者问题描述如下:有一个有限缓冲区和两个线程,生产者和消费者,他们分别不停地把产品放到缓冲区和从缓冲区拿走数据,一个生产者在缓冲区满的时候必须等待,而消费者在缓冲区空时也必须等待,又因为缓冲区时临界资源,故要实现两个线程之间的互斥访问。在本实验中采用管道来模拟有限缓冲区,并使用信号量来解决同步和互斥问题。在这里我们使用三个信号量:mutex,avail,full。其中两个信号量av

2013-09-20 17:11:21 2377

原创 gcc中-pthread和-lpthread的区别

用gcc编译使用了POSIX thread的程序时通常需要加额外的选项,以便使用thread-safe的库及头文件,一些老的书里说直接增加链接选项 -lpthread 就可以了,像这样:Shell代码  gcc -c x.c  gcc x.o -ox -lpthread   而gcc手册里则指出应该在编译和链接时都增加 -pthread 选项,像这样:S

2013-09-20 10:56:50 12397

原创 信号量的简单使用

信号量是多任务操作系统中用来实现多个进程或线程之间同步于互斥的,在操作系统中使用PV操作实现信号量的操作。在本例中,首先创建一个子进程,然后利用信号量实现控制父子进程的运行顺序:#include #include #include #include #include #include /*为了得到更好的观察效果,设置延时*/#define DELAY_TIME 3

2013-09-14 18:42:09 3526

原创 一个简单的守护进程的编写

守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程。它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程常常在系统引导装入时启动,在系统关闭时终止。Linux系统有很多守护进程,大多数服务都是通过守护进程实现的,同时,守护进程还能完成许多系统任务,例如,作业规划进程crond、打印进程lqd等(这里的结尾字母d就是Daemon的

2013-09-12 18:21:15 2153

原创 命名管道文件的使用

管道文件分为存在内存的无名管道和存在磁盘的有名管道,

2013-09-10 17:28:54 1970

原创 使用vfork函数时出现总线错误

在学习进程编程的时候,发现了一个有意思的事情,代码如下:#include #include main(){ if( vfork() ==0 ) { printf(“This is the child process\n”); } else { printf(“This is the parent process\n”); } return 0;}这个程序看

2013-09-08 17:43:46 1006

原创 C库函数——getcwd函数

函数原型:char *getcwd(char *buffer,size_t size)函数功能:提供一个size大小的buffer空间,用来存储得到的当前的目录示例代码:#include #include int main(void){ char buf[50]; getcwd(buf,sizeof(buf)); printf("Current working dir

2013-09-07 22:18:51 3581

原创 C库函数——fputc函数

函数原型:int fputc(int c,FILE *stream);作用:将字符c写入stream文件中代码:#include #include int main(int argc,char *argv[]){ FILE *fp; char ch; if( argc != 2 ) { printf("Usage:%s filename\n\a",argv[0])

2013-09-07 18:55:19 3241 1

原创 学生信息管理系统

刚写了一个学生信息管理系统,权当是训练,由于时间仓促,肯定有BUG,如果大家发现了,希望在评论中指出啊!本人不胜感激!(运行平台linux+GCC)#define LEN sizeof(struct student)#define FORMAT "%-8d|%-15s|%-12.1lf|%-12.1lf|%-12.1lf|%-12.1lf\n"#define DATA stu[i].num

2013-09-07 18:36:31 2229

原创 C库函数——fgetc函数

C语言的库函数中有一个fgetc函数,这个函数比较有意思,先看原型:int fgetc(FILE *stream);这个函数可以从文件指针指向的文件中读取一个字符,当第二次读取的时候他会接着上一次读出来,这个实现说明他在读文件的时候创建了一个指向文件中字符的指针,可以一个一个地读出来,并且可以一个一个地后移。而且它还支持中文输出!源码:#include #include int

2013-09-07 18:31:27 2284

原创 经典的文件拷贝函数及算法

#include #include #include #include #include #include #define BUFFER_SIZE 1024int main(int argc,char *argv[]){ int from_fd,to_fd; int read_bytes,write_bytes; char buffer[BUFFER_SIZE]; ch

2013-09-07 17:48:56 1389

原创 C++运算符重载

C++中提供了运算符重载的功能,在大型项目中可以实现泛型,本例以++运算符为例,进行运算符重载,代码:#include using namespace std;class num{public: num() { n = 1; } int get() { return n; } void oper

2013-09-04 18:09:11 786

Java 并发——基石篇.pdf

Java 并发——基石篇 的 pdf 文档,原文章我发布在知乎上了: https://zhuanlan.zhihu.com/p/75532011 但是知乎的格式不太好看,另外有字数限制,我不得不将文档分为三个部分。 这里提供一份 pdf 格式的文档,格式比较好看,方便大家。

2019-07-28

CentOS 5.5 图形安装教程(超详细).

CentOS 5.5 图形安装教程(超详细),清晰度高,步骤很详细,拿出来和大家分享一下

2012-10-26

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

TA关注的人

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