On Sunday, 14 February 2016 at 14:12:09 UTC, Ola Fosheim Grøstad wrote:
You can work around it by having extra pointers/containers in or held by the struct (pointers to the source that is pointing to you). But that takes more space.

In the not-multithreaded version. In the multithreaded version you would have to use a heap allocated object that does not move and put the mutex there.

If std.move(x) wipes out x, without checking mutexes first... well, that can't work well with multi-threading. I guess you could avoid using std.move(x) and use a different function, but how do you ensure that?


Reply via email to