![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 53
薛定谔的缝纫机
这个作者很懒,什么都没留下…
展开
-
Linux下的多线程操作四:线程安全
线程安全:如果一个函数能够安全的同时被多个线程调用而得到正确的结果,那么,我们说这个函数是线程安全的。简单来说线程安全就是多个线程同时执行同一段代码时,不会出现不同的结果,我们就可以说该线程是安全的;线程安全产生的原因:大多是因为对全局变量和静态变量的操作。我们来看一个线程不安全的函数ctime#include <func.h>void* threadFunc(void *p){ time_t now; time(&now); //获取当前时间原创 2021-08-22 16:46:27 · 159 阅读 · 0 评论 -
Linux下的多线程二:线程的锁的创建于属性
先来了解线程的互斥再来了解同步在 Posix Thread 中定义了一套专门用于线程互斥的 mutex 函数。mutex 是一种简单的加锁的方法来控制对共享资源的存取,这个互斥锁只有两种状态(上锁和解锁),可以把互斥锁看作某种意义上的全局变量。为什么需要加锁,就是因为多个线程共用进程的资源,要访问的是公共区间时(全局变量),当一个线程访问的时候,需要加上锁以防止另外的线程对它进行访问,实现资源的独占。在一个时刻只能有一个线程掌握某个互斥锁,拥有上锁状态的线程能够对共享资源进行操作。若其他线程希望上锁一个已原创 2021-08-22 15:12:01 · 148 阅读 · 0 评论 -
Linux下的多线程操作一:线程的创建于访问控制
Linux的线程是采用用户级的线程库实现的,一般采用pthread线程库实现线程的访问和控制。它用第 3 方 posix 标准的 pthread,具有良好的可移植性。 编译的时候要在后面加上 –lpthread,即链接一个第三方库。线程的创建#include <pthread.h>int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine) (void *), void *ar原创 2021-08-21 09:18:46 · 239 阅读 · 0 评论 -
Linux下文件的读写
Linux下对文件操作有几大接口,先简单的介绍一下open,read,write先用open接口去打开文件,flag表示打开文件的权限不同。int open(const char *pathname, int flags);int open(const char *pathname, int flags, mode_t mode);一般常用的就是O_RDWR,O_RDONLY类似于fread的r模式。三个参数版本的是O_CREAT和O_EXCL,第三个参数是八进制权限,如0777。int ma原创 2021-08-17 22:00:12 · 3159 阅读 · 0 评论