腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
当
线程
执行IO时,pthread_cancel会
取消
线程
吗?
、
、
题目很清楚,什么时候才是实际的“
取消
点
”?POSIX要求read是一个
取消
点
,但是是在
线程
第一次调用read时还是在完成之后呢?POSIX到底什么时候要求
取消
线程
?
浏览 5
提问于2014-12-21
得票数 1
回答已采纳
1
回答
是否更改另一个
线程
的pthread
取消
类型?
、
、
、
我想要完成的是,主
线程
首先在工作
线程
上尝试正常的延迟
取消
(对我来说,执行代码是一个黑盒),然后如果
线程
在超时(pthread_timedjoin_np())后仍在运行,我希望执行异步
取消
。我遇到的问题是pthread_setcanceltype()只适用于调用
线程
。有什么变通方法或技巧可以让我做到这一
点
吗?我希望避免使用信号,因为至少在
Linux
下,异步
取消
似乎仍然会执行
线程
对象的C++析构函数,这对我来说很重要。
浏览 1
提问于2011-07-06
得票数 1
回答已采纳
1
回答
Linux
驱动程序设置
取消
点
、
、
我正在为
Linux
编写一个简单的字符设备驱动程序,其中包含了块read()和write()。我想要做的是将它们设置为
取消
点
,这样在这些函数上挂起的
线程
上调用pthread_cancel将导致其终止。提前谢谢。
浏览 6
提问于2016-10-12
得票数 1
回答已采纳
2
回答
什么时候POSIX
线程
取消
不是立即的?
、
、
、
POSIX为
线程
取消
类型指定了两种类型:PTHREAD_CANCEL_ASYNCHRONOUS和PTHREAD_CANCEL_DEFERRED (由pthread_setcanceltype(3)设置)通过我的阅读,POSIX手册页并没有提到这些,但是
Linux
手册页提供了关于PTHREAD_CANCEL_ASYNCHRONOUS的以下内容 我很好奇这个系统的意义
浏览 6
提问于2013-07-18
得票数 3
回答已采纳
2
回答
致命: c++中未重新引发的异常
、
、
start_thread () from /lib64/libpthread.so.0但是,如果我
取消
了
线程
函数运行中的睡眠
浏览 2
提问于2016-01-24
得票数 4
回答已采纳
1
回答
原子“检查信号并进入系统调用”操作
、
、
、
我正在尝试在C++中实现我自己的
取消
点
机制。该代码主要针对
Linux
,但我希望它可以在POSIX系统之间移植。由于显而易见的原因,每个阻塞的系统调用都必须是一个
取消
点
,否则
线程
可能永远阻塞,没有任何东西能够唤醒它。目前我使用signal来实现这一
点
。当
线程
接收到表示
取消
请求的特殊信号时,信号处理程序设置
线程
本地标志。如果
线程
在某些系统调用上被阻塞,它将失败,并返回errno == EINTR。然后它
浏览 0
提问于2013-01-30
得票数 3
1
回答
在用户空间中实现可
取消
的系统
、
、
、
、
我正致力于在
Linux
上实现
线程
取消
,而没有在我最近的一些问题中讨论过的“不愉快的行为”(有些人可能会说是bug)。到目前为止,
Linux
/glibc用于
取消
线程
的方法是将其视为不需要内核支持的东西,并且可以在库级别上进行处理,只需在创建syscall之前启用异步
取消
,并在syscall返回后恢复以前的
取消
状态。解决这个问题的第一个想法是设置
线程
位于
取消
点
的标志,而不是启用异步
取消
浏览 1
提问于2011-04-16
得票数 10
回答已采纳
3
回答
pthread_cancel在使用互斥条件变量时
你好,我有一个关于
取消
使用互斥和条件变量的
线程
的问题。
线程
的
取消
类型延迟。当我只使用p
线程
_mutex_lock/ pthread_cond_wait函数和一个
取消
请求到达时,
线程
的
取消
点
仅为pthread_cond_wait。它能锁上互斥锁吗?我不确定,如果
线程
总是离开互斥解锁。或者p
线程
_mutex_lock/unlock函数也是
取消
点
吗?
浏览 7
提问于2014-06-21
得票数 3
回答已采纳
1
回答
我应该在清理处理程序中解锁互斥对象吗?
、
、
、
、
引用man 3 pthread_mutex_unlock
浏览 3
提问于2016-02-14
得票数 2
2
回答
如何在vxworks或
linux
上
取消
阻塞的系统调用?
、
、
、
在任务II中running = true;close(fd); /* Or: close(sock);*/在vxworks中,有一个函数,ioctl(fd, FIOCANCEL, 0)
取消
一个阻塞的读写,但它不能工作。如何在vxworks和
linux
中编写任务II?或者还有其他方法来完成我的任务?
浏览 1
提问于2013-07-22
得票数 0
2
回答
如何
取消
子POSIX
线程
、
、
、
.等待3秒后,主
线程
发出命令pthread_cancel停止子
线程
,调用命令pthread_join后,子
线程
真正开始响应
取消
。此时,主
线程
运行到紧跟在pthread_join之后的行,子
线程
在以下代码的循环中运行, printf("Thread is\n", i); } 我在这个循环中看不到任何检查语句,但是主
线程
仍然
浏览 0
提问于2011-07-10
得票数 6
回答已采纳
1
回答
是否可以
取消
C++ 11或14中的阻塞呼叫?
、
、
、
场景:我需要StopThread能够停止
线程
并
取消
阻塞在ReadValue上的调用。我该怎么做?在C++11或14中有什么方法吗?std::async可能是一个解决方案吗?
浏览 1
提问于2018-07-12
得票数 1
4
回答
使用pthread_cancel
取消
线程
:好的做法还是坏的做法
、
、
我在
Linux
5.3(
Linux
5.3)上有一个C++程序,它产生多个
线程
,这些
线程
在无限循环中执行作业并休眠一定的时间。现在,我必须
取消
正在运行的
线程
,以防出现新的配置通知,并重新启动一组新的
线程
,为此我使用了pthread_cancel。我观察到的是,即使在接收到
取消
指示后,
线程
也不会停止,甚至一些休眠
线程
在休眠完成后也会出现。
浏览 8
提问于2011-01-21
得票数 27
回答已采纳
1
回答
thread_cancel和阻塞函数作为cond_wait
、
、
、
我的主进程将pthread_cancel发送到另一个
线程
,该
线程
等待cond_wait(&condition)出现条件。在pthread_cancel上,他们说:延迟
取消
能力意味着
取消
将被延迟,直到
线程
下一次调用作为
取消
点
的函数。但这些函数通常是阻塞函数。那么我的问题是,只有在
线程
解除阻塞(在我的例子中是广播或信号)之后,
线程
才被
取消
,或者它会看到我正在
取消
点
上阻塞,然后<
浏览 0
提问于2013-03-26
得票数 1
3
回答
pthread_exit(PTHREAD_CANCELED)和pthread_cancel(pthread_self())的区别
、
当调用pthread_exit(PTHREAD_CANCELED)时,我有预期的行为(堆栈展开、析构函数调用),但对pthread_cancel(pthread_self())的调用只是终止了
线程
。为什么pthread_exit(PTHREAD_CANCELED)和pthread_cancel(pthread_self())有很大的不同,在后一种情况下
线程
内存没有被释放?背景如下: 这些调用是从信号处理程序发出的,这种奇怪的方法背后的原因是
取消
一个等待外部库semop()完成的
线程
(我想是在EINTR上循环)。我注意到从其
浏览 2
提问于2014-01-14
得票数 2
2
回答
取消
点到底是什么?
、
我正在尝试弄清楚c++中的
取消
点到底是什么。我已经读过了:但在某些问题上,我还是有些困惑。例如,我使用文件write()函数。显然,这是一个
取消
点
。因此,当我调用write()时,我可以看到另一个
线程
可能开始处理(因此我的代码从写
线程
切换到另一个
线程
),这通常发生在写到缓冲区已满并且需要在write()成功/完成之前清空的时候。但在我看来,这不是一个
线程
的
取消
,而仅仅是一个临时的阻塞/挂起,并且没有
线程
“清理
浏览 0
提问于2014-12-09
得票数 23
回答已采纳
1
回答
pthread_cancel在arm和ppc上的行为不同?
、
、
我目前正在开发一个多
线程
应用程序,它将部署在arm和ppc体系结构上。我手臂上的pthread_cancel有点问题。 arm上的pthread_cancel与ppc的行为不一样。
线程
被
取消
,但是
线程
的局部变量的析构函数没有在arm上被调用。我还试图显式定义通过pthread_cleanup_push安装的
取消
清理处理程序。但是,当
线程
被
取消
时,它不会被调用。
取消
线程
时,将调用局部变量的析构函数。当我显式地定义了一个清理处理程序时,当
浏览 0
提问于2009-03-12
得票数 5
回答已采纳
2
回答
C++:无活动异常终止调用(GCC)
、
、
、
还有一
点
是有趣的:如果用-DNOEXCEPT编译的话,它就会贯穿整个系统。因此,如果一个
线程
被
取消
在一个潜在的sic函数中,它就会出现!抛出一个异常,如果打开优化,程序可能会中止。
浏览 3
提问于2016-06-07
得票数 10
回答已采纳
1
回答
如何使用C++
取消
线程
?
POSIX提供了
取消
线程
执行的函数pthread_cancel,但是C++似乎没有提供这样的函数,也可以使用混合std::pthread_cancel吗?我还在
linux
系统上看到,std::
线程
是POSIX
线程
的包装器。
浏览 5
提问于2021-05-25
得票数 1
回答已采纳
1
回答
如何在使用C++11
线程
模型或tbb
线程
类时
取消
特定的
线程
?
、
、
、
、
在使用C++11
线程
模型或TBB
线程
类时,如何
取消
其他
线程
(如果您使用的是pthread lib,可以使用pthread_cancel
取消
其他
线程
)?Ps:在C++11
线程
模型或TBB
线程
类中,有没有
线程
取消
点
作为pthread的概念?
浏览 0
提问于2014-08-24
得票数 0
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
linux多线程服务器
豆瓣怎么取消点赞?豆瓣取消点赞教程
Linux系统编程 线程属性
分享:C语言编程——LINUX 多线程
Linux系统编程 线程同步概念
热门
标签
更多标签
云服务器
ICP备案
实时音视频
对象存储
即时通信 IM
活动推荐
运营活动
广告
关闭
领券