Release D 2.090.0

Steven Schveighoffer schveiguy at gmail.com
Tue Feb 25 20:56:11 UTC 2020


On 2/25/20 2:40 PM, uranuz wrote:
> Seems that I managed to slightly reduce the problemme. I suspect that 
> error is somehow connected with running my code inside TaskPool:
> https://dlang.org/library/std/parallelism/task_pool.html
> 
> `Memory allocation failed` error occurs when I throw any exception even 
> trivial one:
> throw new Exception(`Test`)
> 
> I have 3 modes of my small web server:
> 1. The main mode uses TaskPool to create fixed pool of working threads.
> 2. The second mode just creates new thread for every connection using 
> class inherited from: import core.thread: Thread;
> 3. And the third variation is most stupid. It handles all requests in 
> single thread.
> 
> The second and third variant working normally. But the first generates 
> memory allocation error when I throw Exception inside of it. There was 
> no such error before 2.090. I have tried forcibly recompile the same 
> version of my code with 2.089 and 2.090. And version compiled with 2.089 
> doesn't have this issue.
> 
> Do anybody knows what could be changed or what else to try?

Have you tried valgrind or similar tools? Memory errors are the worst.

"Memory allocation failed" seems to suggest however that you are out of 
memory.

But with memory errors - it's quite possible the problem is still in 
2.089, but some small change causes the memory issue to come out.

-Steve


More information about the Digitalmars-d-announce mailing list