row*_*n.G 3 c multithreading pthreads
所以我似乎无法找到关于assert是否可用于多线程上下文的可靠信息.
逻辑上对我来说似乎断言失败线程得到关闭而不是其他线程?
还是整个过程都被杀了?
基本上我的问题.在没有泄漏资源的情况下在多线程环境中使用assert是否安全?
Sou*_*osh 5
如果你看到的手册页的assert(),它明确规定,
assert()
这个宏的目的是帮助程序员找到程序中的错误.消息"文件foo.c中的断言失败,函数do_bar(),第1287行"对用户没有任何帮助.
这意味着,它仅在开发环境中有用[并且应该使用],而不是在生产软件中.IMO,在开发阶段,你不必担心leak引起的问题assert().因人而异.
leak
一旦你完成调试你的代码,你可以简单地关掉的assert()定义[功能#define] NDEBUG.
#define
NDEBUG
归档时间:
11 年 前
查看次数:
1389 次
最近记录: