• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Suzkfly
博客园 首页 新随笔 联系 订阅 订阅 管理
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 13 下一页

2021年1月27日

无名信号量——线程间同步
摘要: 1、 概述 在linux中,线程就相当于一个轻量级的进程,它常常被用来完成某种特定功能的事情。假如一个进程创建了多个线程,这些线程要一起配合完成一件更大的事情,这个时候就需要用到线程同步机制了。在Linux中通常用信号量实现线程间的同步。 这种情形可以用现实生活中来举例子,比如甲乙两个人用双人手拉锯 阅读全文
posted @ 2021-01-27 19:36 Suzkfly 阅读(560) 评论(0) 推荐(0)
 
 

2021年1月26日

TCP程序优化
摘要: 1. TCP Server测试 在我https://www.cnblogs.com/Suzkfly/p/14049687.html这篇博客中提到,按照文种的范例程序测试,在Ubuntu中运行a.out,在windows下用网络调试助手不断的断开重连,在Ubuntu下另开一个终端,运行执行ps -au 阅读全文
posted @ 2021-01-26 17:20 Suzkfly 阅读(233) 评论(0) 推荐(0)
 
Linux中让终端输入变为非阻塞的三种方法
摘要: 介绍 在linux下每打开一个终端,系统自动的就打开了三个文件,它们的文件描述符分别为0,1,2,功能分别是“标准输入”、“标准输出”和“标准错误输出”,同时对应了三个文件流指针,分别是stdin,stdout和stderr。三个文件描述符定义了对应的宏,分别为STDIN_FILENO,STDOUT 阅读全文
posted @ 2021-01-26 16:52 Suzkfly 阅读(3923) 评论(0) 推荐(0)
 
 

2021年1月25日

3、wait和waitpid
摘要: 1. 函数介绍 wait函数:调用该函数使进程阻塞,直到任意一个子进程结束,或者该进程接收到了一个信号为止,如果该进程没有子进程或该进程的子进程已经结束,wait函数立即返回。 waitpid函数:与wait函数类似,但可以指定子进程的PID以及等待方式(阻塞和非阻塞)。 他们的函数原型如下: pi 阅读全文
posted @ 2021-01-25 16:53 Suzkfly 阅读(294) 评论(0) 推荐(0)
 
 

2021年1月24日

2、fork函数与进程ID
摘要: 1. fork函数 fork函数用于克隆一份当前的进程资源,调用fork函数之后,进程一分为二,并且两个进程的资源是一样的(只是资源内容完全一样,并不是同一份资源)。fork函数的函数原型为:pid_t fork(void); 需要包含unistd.h,返回值pid_t类型实际上就是int型。 在调 阅读全文
posted @ 2021-01-24 18:59 Suzkfly 阅读(1037) 评论(0) 推荐(1)
 
 

2021年1月22日

TCP客户端程序
摘要: TCP客户端程序的函数调用顺序为:socket -> connect -> send/recv socket、send和recv函数在TCP服务器程序中已经说过了,这里就不赘述了。 connect connect函数的原型为:int connect(int sockfd, const struct 阅读全文
posted @ 2021-01-22 20:24 Suzkfly 阅读(638) 评论(0) 推荐(0)
 
TCP服务器程序
摘要: Linux下编写TCP服务器调用的函数顺序为:socket -> bind -> listen -> accept -> recv/send socket 参见:http://c.biancheng.net/view/2131.html socket函数成功返回文件描述符,失败返回-1 bind 参 阅读全文
posted @ 2021-01-22 18:44 Suzkfly 阅读(611) 评论(0) 推荐(0)
 
 

2021年1月20日

线程
摘要: 线程的创建 原型:int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine) (void *), void *arg); 参数: thread:线程ID存放空间地址 attr:线程属 阅读全文
posted @ 2021-01-20 21:54 Suzkfly 阅读(81) 评论(0) 推荐(0)
 
 

2021年1月19日

linux动态库
摘要: 在我写的另一篇博客中讲解了静态库的使用:https://www.cnblogs.com/Suzkfly/p/14298950.html 本篇讲解动态库的使用,还是编写两个测试程序,main.c和hello.c,在main.c中调用hello.c中的函数。 hello.c 1 #include <st 阅读全文
posted @ 2021-01-19 19:20 Suzkfly 阅读(198) 评论(0) 推荐(0)
 
linux静态库
摘要: 库文件可以理解为别人写好的现成的代码,但是看不见源码,只提供程序入口。库又分为动态库和静态库,静态库是在编译的时候将库编译进可执行程序中,运行时不再依赖库文件,而动态库是在运行时加载,运行时需要依赖库文件。静态库以libxxx.a命名,动态库以libxxx.so命名。 比如编写两个文件,hello. 阅读全文
posted @ 2021-01-19 17:12 Suzkfly 阅读(282) 评论(0) 推荐(0)
 
 
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 13 下一页

公告


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3