kanal icon indicating copy to clipboard operation
kanal copied to clipboard

The fast sync and async channel that Rust deserves

Results 12 kanal issues
Sort by recently updated
recently updated
newest added

I couldn't stop thinking about how to maybe abstract all the `unsafe` stuff into a single module. This `StackCell` should be sound (maybe I made a mistake), and could potentially...

`kanal` hangs for me 99% of the time in all async benchmarks, both with the [official benchmarks](https://github.com/fereidani/rust-channel-benchmarks) and with [Tachyobench](https://github.com/asynchronics/tachyobench/). I was initially suspecting a problem with async notifications, but...

https://play.rust-lang.org/?version=stable&mode=release&edition=2021&gist=8c4019721056c7bf7ccfef8f6f4a6d86 This code hangs forever but finishes with std mpsc or crossbeam. Removing the sleep fixes the issue.

bug
help wanted

Nice work!! I think it would be nice to have a clear separation of the different kind of channels. I assume the one currently implemented is mpmc because both the...

enhancement
discussion

Just saw this on Reddit, and I think I have to leave a few notes on the code. I don't want to demotivate you and can offer to send in...

miri reports lots undefined behaviour, and some are easy to confirm. For example ``` running 13 tests test kanal_tests::tests::mpmc_0 ... error: Undefined Behavior: trying to retag from for SharedReadWrite permission...

I see that others have made related PRs and suggestions, but in my opinion these came short of fully solving the problem. The issue is that the `AsyncSignal::poll` method takes...

Hello, thank you very much for this crate. Exactly what I need for my application. I would like to ask: How expensive to create one `ReceiveStream` from `Receiver` ? If...

Select would be very helpful especially when one channel is used to communicate cancellation while another is communicating elements. However, I did not test closing a channel, but coming from...

## Problem Continuing from #34, I audited oneshot and found a data racing problem. The quickest way to reproduce it is using MIRI. ```console $ cargo +nightly miri --version miri...