title: Is it possible to set a checkpoint in multithreaded program?
body: <p>I have to debug program with multiple threads. I use gdb, and I'd like to use checkpoints. The only limitation in the <a href="https://sourceware.org/gdb/current/onlinedocs/gdb/Checkpoint_002fRestart.html#Checkpoint_002fRestart" rel="nofollow noreferrer">manual</a> is that checkpoints are only available on gnu/linux systems, but nothing related to threads.</p>
  
  <p>However, when I try to checkpoint, I have an error:</p>
  
  <pre><code>(gdb) checkpoint
  checkpoint: can't checkpoint multiple threads.
  </code></pre>
  
  <p>Is there something I am doing wrong, or is it indeed not possible to checkpoint multi-threaded programs (with this limitation not listed in the manual) ?</p>
  
  <hr>
  
  <p>N.B.: I am well aware that the notion of checkpoint/rollback is really difficult in a concurrent system, due to the causality aspects of such programs, the question is more about if there is something I am missing.</p>