c 线程和资源锁定

标签 c multithreading resources mutex locks

我有一个二维数组和 8 个写入数组的并发线程。如果每个线程读取/写入不同的数组,是否会导致段错误?

例如:

char **buffer;
//each thread has its own thread ID
void set(short ID, short elem, char var)
{
     buffer[ID][elem] = var;
}

这样可以吗?我知道这是伪代码,但你明白了。

最佳答案

如果每个线程写入不同的子数组,您的代码的这方面就没问题,您将不需要锁定。

关于c 线程和资源锁定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15666322/

相关文章:

data-binding - Silverlight 4 TargetNullValue 到资源

C:双向链表中的段错误,在追加和删除函数中

java - java.util.concurrent.CountDownLatch 的实现是否可以处理向上递增的初始计数?

android - 想要延迟 1 秒显示数字

xml - 最佳实践 - 由两个名称标识的资源的 REST URI 设计

java - 更改 Wicket 资源 URL 的 URL 前缀?

c - 设置静态分配对象的内存位置

c - void * 作为函数参数

c - 免费的 C 语言 IDE?

java - 多线程 - 命名线程和处理异常