DCD as a library - stops working after some thread is created.

Vadim Lopatin via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Aug 11 01:17:32 PDT 2017


I'm using DCD as a library in DlangIDE.
All DCD calls are made from separate thread.
DCD works ok until some thread is created (e.g. to invoke DUB for 
building).
After this operation DCD stops working correctly and can locate 
symbols only from current source file.

Root cause:
If some another thread is created after DCD thread instantiated 
ModuleCache, DCD is not able to process goToDefinition for symbol 
and other functions if they are related to other modules than 
current source file.
Probably, it's related to ModuleCache and/or allocators.

Steps to reproduce:
After creation of ModuleCache, start some thread and wait until 
it's finished.


Does someone know some workaround?


Filed DCD issue 407.

DCD stops working if some thread is created after instantiation 
of ModuleCache

https://github.com/dlang-community/DCD/issues/407


More information about the Digitalmars-d-learn mailing list