Hi there,
I'm new in dlang I specially like betterC. I was hoping that d fibers would be implemented in without using classes, but there are not. Is there another way how to use async/await in dlang better c?
Thank you for your help
Abby
Thread overview | ||||||||
---|---|---|---|---|---|---|---|---|
|
September 21, 2021 better c fibers | ||||
---|---|---|---|---|
| ||||
Hi there, Thank you for your help |
September 26, 2021 Re: better c fibers | ||||
---|---|---|---|---|
| ||||
Posted in reply to Abby | On Tuesday, 21 September 2021 at 09:37:30 UTC, Abby wrote: >Hi there, Thank you for your help There are no async/await keywords in D yet. Have you tried searching for compatible packages in dub? |
September 26, 2021 Re: better c fibers | ||||
---|---|---|---|---|
| ||||
Posted in reply to Abby | On Tuesday, 21 September 2021 at 09:37:30 UTC, Abby wrote: >... I'm not aware of any -betterC package specifically for coroutines. I have some work done in this regard, but sadly the library itself isn't really usable at all so if you want to put in the effort you'd have to probably extract the code out, but that's quite a bit of effort: https://github.com/BradleyChatha/bcstd/tree/master/source/libd/async To make it even more annoying there's also an ASM file you'd have to deal with: https://github.com/BradleyChatha/bcstd/blob/master/source/asm/coroutine.nasm Alternatively you could go for a C coroutine library, which should function ok-ish, but not perfect, but would likely be much easier than the above suggestion. Or write your own, as is a common suggestion around here :3 Libaco provides the general gist of how it works: https://github.com/hnes/libaco#proof-of-correctness |
September 26, 2021 Re: better c fibers | ||||
---|---|---|---|---|
| ||||
Posted in reply to SealabJaster | On Sunday, 26 September 2021 at 09:48:58 UTC, SealabJaster wrote: >... I feel I didn't make it clear enough that extracting the code would be way too much effort than its worth, especially since I'm not even sure it runs on Linux. So I really wouldn't suggest going down that route. |
September 27, 2021 Re: better c fibers | ||||
---|---|---|---|---|
| ||||
Posted in reply to Abby | On Tuesday, 21 September 2021 at 09:37:30 UTC, Abby wrote: >Hi there, Thank you for your help A C or C++ concurrency library should work. Another option, if you just want fibers but not true concurrency, would be to do some assembly trickery. Probably not too hard if you know assembly, but not very portable. If the reason you're using |
September 28, 2021 Re: better c fibers | ||||
---|---|---|---|---|
| ||||
Posted in reply to Abby | On Tuesday, 21 September 2021 at 09:37:30 UTC, Abby wrote: >Hi there, On windows you can use the fiber api https://docs.microsoft.com/en-us/windows/win32/procthread/fibers just as you would do in C. |