上一页 1 ··· 39 40 41 42 43 44 45 46 47 ··· 90 下一页
摘要: 以下是自己实现有BUG版本 阅读全文
posted @ 2019-08-23 17:15 王清河 阅读(293) 评论(0) 推荐(0)
摘要: server 下面通过最简单的客户端/服务器程序的实例来学习socket API。 server.c的作用是从客户端读字符,然后将每个字符转换为大写并回送给客户端。 client client.c的作用是从命令行参数中获得一个字符串发给服务器,然后接收服务器返回的字符串并打印。 由于客户端不需要固定 阅读全文
posted @ 2019-08-23 15:20 王清河 阅读(821) 评论(0) 推荐(1)
摘要: 字符串是Python中最常用的数据类型,可以使用单引号或双引号来创建字符串 创建字符串很简单,为变量分配一个值即可。 Python访问字符串的值 Python不支持单字符类型,单字符在Python中也是作为 一个字符串使用 Python访问子字符串,可以使用方括号来截取字符串,如下: 运行结果: r 阅读全文
posted @ 2019-08-22 18:16 王清河 阅读(426) 评论(0) 推荐(0)
摘要: 互斥量mutex 进程间也可以使用互斥锁,来达到同步的目的。但应在pthread_mutex_init初始化之前,修改其属性为进程间共享。mutex的属性修改函数主要有以下几个。 主要应用函数: pthread_mutexattr_t mattr 类型: 用于定义mutex锁的【属性】 pthrea 阅读全文
posted @ 2019-08-21 17:07 王清河 阅读(776) 评论(0) 推荐(0)
摘要: 借助 fcntl函数来实现锁机制。 操作文件的进程没有获得锁时,可以打开,但无法执行read、write操作。 fcntl函数: 获取、设置文件访问控制属性。 int fcntl(int fd, int cmd, ... /* arg */ ); 参2: F_SETLK (struct flock 阅读全文
posted @ 2019-08-21 17:07 王清河 阅读(287) 评论(0) 推荐(0)
摘要: 进化版的互斥锁(1 --> N) 由于互斥锁的粒度比较大,如果我们希望在多个线程间对某一对象的部分数据进行共享,使用互斥锁是没有办法实现的,只能将整个数据对象锁住。这样虽然达到了多线程操作共享数据时保证数据正确性的目的,却无形中导致线程的并发性下降。线程从并行执行,变成了串行执行。与直接使用单进程无 阅读全文
posted @ 2019-08-21 17:06 王清河 阅读(802) 评论(0) 推荐(0)
摘要: 条件变量: 条件变量本身不是锁!但它也可以造成线程阻塞。通常与互斥锁配合使用。给多线程提供一个会合的场所。 主要应用函数: pthread_cond_init函数 pthread_cond_destroy函数 pthread_cond_wait函数 pthread_cond_timedwait函数 阅读全文
posted @ 2019-08-21 17:05 王清河 阅读(373) 评论(0) 推荐(0)
摘要: 读写锁 与互斥量类似,但读写锁允许更高的并行性。其特性为:写独占,读共享。 读写锁状态: 一把读写锁具备三种状态: 1. 读模式下加锁状态 (读锁) 2. 写模式下加锁状态 (写锁) 3. 不加锁状态 读写锁特性: 读写锁也叫共享-独占锁。当读写锁以读模式锁住时,它是以共享模式锁住的;当它以写模式锁 阅读全文
posted @ 2019-08-21 17:03 王清河 阅读(196) 评论(0) 推荐(0)
摘要: 控制原语对比 进程 线程 fork pthread_create exit pthread_exit wait pthread_join kill pthread_cancel getpid pthread_self 命名空间 线程属性 本节作为指引性介绍,linux下线程的属性是可以根据实际项目需 阅读全文
posted @ 2019-08-21 16:56 王清河 阅读(211) 评论(0) 推荐(0)
摘要: pthread_detach函数 实现线程分离 int pthread_detach(pthread_t thread); 成功:0;失败:错误号 线程分离状态:指定该状态,线程主动与主控线程断开关系。线程结束后,其退出状态不由其他线程获取,而直接自己自动释放。网络、多线程服务器常用。 进程若有该机 阅读全文
posted @ 2019-08-21 16:55 王清河 阅读(889) 评论(0) 推荐(0)
上一页 1 ··· 39 40 41 42 43 44 45 46 47 ··· 90 下一页