腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
1
回答
实现
递归
锁
javascript
、
typescript
、
async-await
queue]; tmp.forEach(e => e()); } }await c.synchronized(() => c.synchronized(async () => void 0)); 如何
实现
递归
锁
再想一下 跟踪调用堆栈,找到堆栈中的任何其他
锁
调用
浏览 14
提问于2018-12-19
得票数 3
1
回答
用FSU Pthread
实现
递归
互斥
recursion
、
pthreads
、
mutex
、
recursive-mutex
我想知道佛罗里达州立大学的pthread标准
实现
是否能够处理
递归
互斥
锁
。不幸的是,关于FSU
实现
的文档相当糟糕,并且没有提到将互斥
锁
声明为
递归
的可能性。尝试声明互斥
锁
,如下所示:pthread_mutexattr_init (&mutex_attr); pthread_mutexattr_settype28: error: `PTHREAD_MUTEX_RECURSIVE' undecla
浏览 6
提问于2010-11-18
得票数 1
回答已采纳
8
回答
递归
锁定(Mutex)与非
递归
锁定(Mutex)
multithreading
、
locking
、
mutex
、
deadlock
、
recursive-mutex
POSIX允许互斥
锁
是
递归
的。这意味着同一线程可以锁定同一互斥
锁
两次,而不会死锁。当然,它还需要解锁两次,否则其他线程都无法获得互斥
锁
。并不是所有支持pthread的系统都支持
递归
互斥
锁
,但如果它们想成为的话。 其他API(更高级的API)通常也提供互斥
锁
,通常称为
锁
。一些系统/语言(例如Cocoa Objective-C)同时提供
递归
和非
递归
互斥
锁
。有些语言也只提供一种或另一种。例如,在
浏览 8
提问于2008-10-09
得票数 195
回答已采纳
1
回答
为什么
递归
地获取(重入)
锁
?
java
、
multithreading
、
recursion
、
reentrantlock
ReentrantLock允许线程
递归
地获取相同的
锁
,以便在连续的
锁
/解锁时增加和减少
锁
计数。然而,在将
锁
计数释放到其他线程之前,必须将
锁
计数减为零。为什么或者在什么情况下,我要编写代码来
递归
地获取
锁
? 我能看到的唯一一点就是让我们更方便地编写
递归
代码,其中一个方法(在它的执行过程中获得一个
锁
)被
递归
地调用。在其他情况下,通过线程
递归
/重复获取
锁</em
浏览 1
提问于2014-10-24
得票数 3
1
回答
Go中的
递归
临界区
recursion
、
concurrency
、
go
、
mutex
我知道在Go中不支持
递归
互斥(很多人认为这很危险),通道是
实现
复杂并发模式的首选方式。 但是,我找不到任何合理的方法来
实现
一个非常常见的并发模式--可重入或
递归
临界区。粗略地说: goroutines A和B将竞争一个临界区上的
锁
(比如结构中的某个状态需要进行原子修改)。假设A接收到
锁
。但是,A会
递归
,可能需要多次进入临界区。当它在进入临界区时退出临界区,goroutine B将获得
锁
,依此类推。我想用通道来
实现
这一点(或者在Go中以
浏览 0
提问于2015-05-27
得票数 3
3
回答
Go中的
递归
锁定
go
不幸的是,它不是
递归
的。在Go中
实现
递归
锁
的最佳方式是什么?
浏览 0
提问于2013-02-03
得票数 34
回答已采纳
2
回答
如何
实现
递归
MRSW
锁
?
c++
、
multithreading
、
synchronization
我的项目需要一个完全
递归
的多读/单写
锁
(共享互斥)-我不同意这样的观点,如果你有完全的常量正确性,你就不应该需要它们(在boost邮件列表上有一些关于这一点的讨论),在我的例子中,
锁
应该保护一个完全透明的缓存至于
递归
MRSW
锁
的语义,我认为唯一有意义的是,除了共享
锁
之外,获取排它
锁
还会暂时释放共享
锁
,当排它
锁
释放时,会重新获取它。有一个有点奇怪的效果,解锁可以等待,但我可以接受这一点--写入很少发生,
递归
锁
浏览 2
提问于2009-08-31
得票数 6
2
回答
boost等效于windows互斥
c++
、
windows
、
boost
在Mac上的boost land中,下面的代码本身会锁住:m.lock();boost::mutex m; boost::mutex::scoped_lock lock(m);
浏览 0
提问于2013-09-03
得票数 0
回答已采纳
1
回答
C++ Boost互斥
锁
c++
、
boost
、
mutex
最近我在玩Boost互斥,我不确定我是否能做到以下几点: ListLock.lock(); ListLock.unlock(); ListLock.lock(); ListLock.unlock();锁定ListLock两次可以吗?
浏览 10
提问于2017-07-05
得票数 1
1
回答
如何使用计数信号量创建
递归
互斥
锁
c
、
logic
、
bare-metal
我正在写一个系统驱动程序,但是我需要
递归
互斥
锁
,但是我不知道如何
实现
它们。我目前只有一个作为自旋
锁
操作的计数信号量。可以从信号量创建一个
递归
互斥
锁
吗?或者我必须创建另一个同步原语吗?如果是,如何创建?
浏览 23
提问于2018-12-17
得票数 1
回答已采纳
1
回答
有没有平台不支持重复互斥
锁
或
递归
锁
?
c
、
multithreading
、
embedded
、
mutex
我想知道我的
实现
是否应该支持可重入互斥
锁
。代码应该是可移植的/独立于平台的。我想知道互斥
锁
递归
是否足够常见,以至于不应该成为一个问题。
浏览 2
提问于2010-10-19
得票数 2
回答已采纳
1
回答
如果尚未持有,则获取读/写
锁
multithreading
、
glib
在GLib中,是否有一个操作可以告诉它“如果你还没有掌握
锁
的话,就去获取它”?同一个线程可以获得两次
锁
(使第二次获取为无操作,或者要求释放它两次),还是测试它是否已经持有特定的
锁
?shared_data->rw_lock是同步访问的读写
锁
。 func_a()和func_b()都可以从外部调用。mess_with_data()和mess_with_data_again()并不是线程安全的,因此调用方在调用它们之前需要对数据保持写
锁
。func_a()和func_b()的调用方没有直接访问
锁<
浏览 0
提问于2019-03-16
得票数 0
回答已采纳
4
回答
递归
和非
递归
锁
(互斥
锁
)
c++
、
multithreading
、
mutex
、
recursive-mutex
所以我一直在读关于
锁
的文章,但问题是大多数信息都是不一致的,或者没有定义平台。在,最被接受的答案是: 2)如果在
锁
中由线程A和线程B调用在非
递归
互斥中获取
锁
,那么线程B会等到
锁
被释
浏览 9
提问于2014-10-30
得票数 4
回答已采纳
1
回答
为什么std::mutex比CRITICAL_SECTION慢两倍
c++
、
winapi
、
c++11
、
mutex
、
critical-section
互斥
锁
是用关键部分
实现
的,这就是为什么它比OS (在Windows上)要快得多的原因。然而,它没有Windows CRITICAL_SECTION那么快。另外,如果它不是用Mutex
实现
的,他们为什么叫它Mutex呢?
浏览 1
提问于2015-02-17
得票数 8
回答已采纳
9
回答
如何
递归
地释放Subversion中的
锁
?
version-control
、
locking
、
svn
我从respository中查看了一个工作副本,并获得了它所有文件的
锁
。然后,在不释放
锁
的情况下,我将文件夹从磁盘中删除。我无法从存储库中删除该文件夹,因为它有一个
锁
如何打破存储库中的
锁
?是否有命令可以
递归
地打开文件夹的
锁
?
浏览 1
提问于2010-07-01
得票数 52
回答已采纳
1
回答
MySQL:可以
递归
地锁定表吗?
mysql
、
recursion
、
locking
、
nested
MySQL (InnoDB)表能否
递归
地锁定()默认行为似乎是(基于我所观察到的)第二个
锁
隐式地UNlocks第一个
锁
。 有什么办法使它
递归
地发挥作用吗?
浏览 2
提问于2013-03-01
得票数 1
回答已采纳
2
回答
NSCondition:
递归
锁定?
objective-c
、
multithreading
、
mutex
、
semaphore
、
nscondition
队列的基本
实现
如下所示:{-(void) enqueue:(__strong id)value while ([self size] == _maxSize) {queue dequeue];
浏览 3
提问于2012-02-03
得票数 1
回答已采纳
1
回答
一个线程中有几个
锁
,为什么需要它们呢?
c#
、
multithreading
上面写着 我只想了解这些信息的目的。
浏览 3
提问于2022-04-04
得票数 1
回答已采纳
1
回答
unique_lock可以与recursive_mutex一起使用吗?
c++
、
multithreading
、
locking
、
recursive-mutex
根据的说法,unique_lock可以通过声明一个std::unique_lock<std::recursive_mutex>来用于
递归
锁定,事实上,这可以很好地编译。然而,通过检查代码(gcc 4.8.2和4.9.0),似乎unique_lock并不遵从_Mutex.lock,而是
实现
了
锁
方法本身: lock()if (!::resource_deadlock_would_occur)); { _M_owns = true;
浏览 7
提问于2014-12-24
得票数 16
2
回答
在什么情况下,一个互斥
锁
可以在同一线程中被多次锁定?
operating-system
、
mutex
如果互斥
锁
可以被线程
递归
锁定,我就不理解互斥
锁
的用法。为什么有人要
递归
地锁定互斥
锁
呢?在什么情况下,他们会使用这个?
浏览 1
提问于2010-08-22
得票数 1
点击加载更多
热门
标签
更多标签
云服务器
ICP备案
对象存储
即时通信 IM
云直播
活动推荐
运营活动
广告
关闭
领券