On Thursday, 23 November 2017 at 10:15:26 UTC, Nordlöw wrote:
I'm looking at

http://vibed.org/api/vibe.core.concurrency/makeIsolated

which is a great idea for safe inter-thread communication.

Are there any more usage examples for vibe's worker tasks that show how to send instances of `Isolated` to an existing such worker task via some low-latency (non-locking) channel-like communication structure?

I guess

http://vibed.org/api/vibe.core.concurrency/send

void send(ARGS...) (
  Task task,
  ARGS args
);

void send(ARGS...) (
  Tid tid,
  ARGS args
);

is what I'm looking for.

Why aren't `ARGS` restricted to be instances of `Isolated`?

Further, shouldn't a trait `isIsolated` be defined and reused here and eventually moved into std.traits alongside `hasAliasing` and `hasIndirections`?

Reply via email to