Skip to content

Add aiologic and culsans #33

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
x42005e1f opened this issue Nov 13, 2024 · 0 comments
Open

Add aiologic and culsans #33

x42005e1f opened this issue Nov 13, 2024 · 0 comments
Labels
package suggestion Package or library suggestions

Comments

@x42005e1f
Copy link

x42005e1f commented Nov 13, 2024

Hello, I would like to suggest two of my libraries: aiologic and culsans. Their purpose is to combine three worlds: the world of threads, the world of greenlets and the world of asynchronous tasks. Despite their novelty and "alpha" development status, their theoretical component is taken seriously, so their reliability is quite good.

aiologic provides thread-safe synchronization and communication primitives: locks, semaphores, queues, etc. These primitives are designed without using existing synchronization primitives, so they can show incredible results in performance tests. Their primary purpose is to work with threads without ever (at any point in time) blocking the event loop, but they also sometimes surpass regular primitives such as threading.Semaphore.

culsans is built on aiologic, and provides its own queues, which differ from aiologic queues in that they provide interfaces compatible with standard queues, which is useful when working with legacy code. It departs from the lock-free style of aiologic by using sync-only mutex in its methods, but retains other properties such as high efficiency and fairness.

Unfortunately, because these libraries solve "unpopular" problems (solutions to which are generally considered either difficult, impossible, or requiring reinvention of the wheel), very few people are aware of their existence. That's why they have so few stars and installations, and why I'm asking you to add these libraries to your list.

Categories: Performance.

@dylanhogg dylanhogg added the package suggestion Package or library suggestions label Dec 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
package suggestion Package or library suggestions
Projects
None yet
Development

No branches or pull requests

2 participants