On Friday, 2 September 2016 at 01:53:58 UTC, Steven Schveighoffer wrote:
On 9/1/16 9:27 PM, mogu wrote:
Here's my code in main function:
```
    auto fiber = new Fiber({
        while (true) {
            Thread.sleep(1.seconds);
            Fiber.yield;
        }
    });

    void foo() {
        while (true) {
            fiber.call;
            //Thread.sleep(1.seconds);
            //"---".writeln;
        }
    }

    new Thread({
        foo();
    }).start;

    new Thread({
        Thread.sleep(500.msecs);
        foo();
    }).start;

```
If I comment the `fiber.call;`, all works.
system: ubuntu 16.04LTS
dmd version: 2.071.1

Fibers in D are not meant to be run in multiple threads.

-Steve

Thanks. I got it.

Reply via email to