小编Bro*_*Cat的帖子

从另一个人那里睡觉

给定两个std :: threads A和B,有没有A可以暂停B的方式,而B中没有任何自定义代码用于此目的?

理由:目前,B是一个非常复杂的算法,当A(监控线程)告诉它时,它应该干净地退出,通过不时地检查一些共享标志.问题是,出于调试目的,我想确切地知道哪个状态B是A请求退出的时刻(例如,看看我们忘记检查共享标志的位置),所以我想暂停B(用于调试)一个.

提前致谢!Broes

c++ multithreading c++11

11
推荐指数
1
解决办法
427
查看次数

Windows下静态链接,正确工作的readline库?

我们正在开发一个依赖于GNU readline库的C++软件包,我们通常使用gcc构建(至少要求版本4).现在我们想将它移植到Windows,获得一个静态链接的版本,我们可以重新分发,而无需用户编译.

我尝试了几种方法:

  • 使用Cygwin构建(不使用提供的readline和-mno-cygwinMinGW编译器),
  • 使用MinGW和GnuWin32的readline构建(未解析的依赖关系到stat64,我无法解析),
  • 使用MinGW构建并从源代码构建readline和必需的pdcurses(最有希望的方法,得到一个静态二进制文件!但是获得的交互式shell表现不正确,例如退格架没有可视化).

我们如何获得其中一种工作方法的想法?

c++ windows cygwin mingw libreadline

8
推荐指数
1
解决办法
5671
查看次数

自动将c ++ 11 auto关键字重写为派生类型

也许是一个奇怪的问题,但是有没有可用的软件,给定一堆c ++ 11代码,派生所有类型的自动类型变量并用这些派生类型重写代码?还有初始化列表?

原因是我们希望提供代码的向后兼容版本(非C++ 11),主要是为了与osx的可移植性.自动键入和初始化列表是我们最常使用的功能,因为它们使代码更具可读性,但是手动删除它们是不行的.事实上,这是编译器对自动类型变量所做的事情,它看起来并不太牵强吗?

c++ auto c++11

6
推荐指数
1
解决办法
724
查看次数

如何在同步执行期间处理bash中的信号?

我有一个bash脚本进程,它在某些时候同步执行一个长时间运行的子进程.在该子进程的运行期间,信号被直接发送到bash脚本进程,请求脚本终止.有没有办法拦截该信号,终止子进程,然后退出bash进程?

显然,bash的信号处理从不中断同步调用?

我无法控制终止信号被发送到bash进程的事实.虽然如果信号可以传播到子进程,那也可以解决我的问题.

提前谢谢,布鲁斯

bash signals

6
推荐指数
2
解决办法
3588
查看次数

使用cmake,如何将external_project语句构建的目标文件链接到另一个库?

在我们的项目中,我们想要使用第三方库(A),它是使用autotools构建的,它生成一个目标文件(B),我们需要一个库(C)的链接时间.

external_project(
    A
    ...
)
set_source_files_properties(B PROPERTIES DEPEND A)
add_library(C ... A)
add_dependency(C B)
Run Code Online (Sandbox Code Playgroud)

我的印象是这应该可以解决问题,但是cmake命令失败了,说它在检查add_library期间无法找到文件A.

任何修复或替代解决方案将不胜感激!(更改第三方库不是一个选项)谢谢!

cmake

5
推荐指数
1
解决办法
4243
查看次数

标签 统计

c++ ×3

c++11 ×2

auto ×1

bash ×1

cmake ×1

cygwin ×1

libreadline ×1

mingw ×1

multithreading ×1

signals ×1

windows ×1