On Wednesday, 11 March 2020 at 14:01:13 UTC, Simen Kjærås wrote: [snip]
Yeah, I forgot we cast to immutable to be able to send, so receive has to receive immutable(Deb)*, after which you can call deb.dup to get a mutable copy:receive((immutable(Deb)* deb) { debForName[deb.name] = deb.dup; },(DoneMessage m) { jobs--; } );
Thanks, that fixed it.However, timing-wise the single threaded version (st) is fastest, then the task multi-threaded version (mt), and finally this version (mto).