new(malloc) locks everything in multithreading
    Kapps via Digitalmars-d-learn 
    digitalmars-d-learn at puremagic.com
       
    Fri Oct 24 14:02:02 PDT 2014
    
    
  
On Friday, 24 October 2014 at 18:38:39 UTC, tcak wrote:
> On Friday, 24 October 2014 at 16:51:02 UTC, Kapps wrote:
>> On Friday, 24 October 2014 at 10:49:42 UTC, tcak wrote:
>>
>> Not sure if this is the same issue, but by default gdb breaks 
>> on signals that the GC uses, which would explain why it's 
>> breaking in gdb but not normally.
>>
>> What happens if you try:
>> handle SIGUSR1 noprint nostop
>> handle SIGUSR2 noprint nostop
>>
>> In GDB before starting execution of the program?
>
> This is what I did on shell: (I put some spaces for readability)
>
> tolga at tolga:~/dev/d/bug$ dmd -gc -debug test.d
>
> tolga at tolga:~/dev/d/bug$ gdb ./test
>
Yes, GDB is stopping on SIGUSR1 / SIGUSR2 since that's the 
default settings. D's GC uses these signals for suspending / 
resuming threads during a collection. You need to type what I 
said above, prior to typing 'run'.
    
    
More information about the Digitalmars-d-learn
mailing list