Skip to content

Conversation

planetis-m
Copy link
Contributor

Examples are kept in a separate folder, although Im thinking of making them later runnableExamples. All but the spinlock depend on std/locks

@planetis-m
Copy link
Contributor Author

Nim 1.4 lacks broadcast so thats why the barrier test fail.

@narimiran narimiran closed this Jul 22, 2021
@narimiran narimiran reopened this Jul 22, 2021
@Araq
Copy link
Member

Araq commented Jul 23, 2021

Nim 1.4 lacks broadcast so thats why the barrier test fail.

So add a version check for these tests or better yet a when declared(broadcast)

@planetis-m
Copy link
Contributor Author

Is porting C++ primitives https://github.com/llvm/llvm-project/blob/main/libcxx/include/semaphore doable? I think the lock based semaphore is overly restrictive, however I am not even sure that code can be ported over different compilers/OSes.

@Araq
Copy link
Member

Araq commented Jun 27, 2022

I only skimmed the C++ code but it looks doable.

@planetis-m
Copy link
Contributor Author

My issue is atomic.wait_all which is platform depended. Implemented with futexes under linux. If someone figures the hard part, then the rest are easy.

@planetis-m
Copy link
Contributor Author

planetis-m commented Aug 5, 2022

@Araq this is ready for merge. shout still no broadcasting support in the CI

@konsumlamm
Copy link
Contributor

What is the status of this? I know that there is https://github.com/planetis-m/sync, but I think it would still be useful to have some more synchronization primitives here. latch is superseded by waitgroups afaict. I'm not so sure about spinlock, since usually you want to use normal locks instead. The others are pretty common synchronization primitives though.

@Araq
Copy link
Member

Araq commented Sep 10, 2023

Please split up this PR.

@planetis-m
Copy link
Contributor Author

Sorry I don't have any available time to modernize and split this PR.

@planetis-m
Copy link
Contributor Author

superseeded by #47

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants