# Timeline for multithreading support

**URL:** <https://forum.crystal-lang.org/t/timeline-for-multithreading-support/3604>\
**Category:** Crystal Contrib\
**Created:** [August 11, 2021, 3:23pm UTC](https://forum.crystal-lang.org/t/timeline-for-multithreading-support/3604 "2021-08-11T15:23:59Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![jzakiya](https://yyz2.discourse-cdn.com/flex036/user_avatar/forum.crystal-lang.org/jzakiya/32/278_2.png) [@jzakiya](https://forum.crystal-lang.org/u/jzakiya)\
**Post date:** [August 11, 2021, 11:31pm UTC](https://forum.crystal-lang.org/t/timeline-for-multithreading-support/3604/3 "2021-08-11T23:31:20Z")

</div>

There are still memory leak issues with current concurrency model, which is closer to GO, than true parallelism available in C++, Nim, Rust, etc.

See these threads for examples.

> [@1.0 multi-threading memory use issues](https://forum.crystal-lang.org/t/1-0-multi-threading-memory-use-issues/2454/32):
>
> You may want to follow the development of Nim’s ARC. [https://forum.nim-lang.org/t/5734](https://forum.nim-lang.org/t/5734)

> [@How to Parallelize this?](https://forum.crystal-lang.org/t/how-to-parallelize-this/1825/6):
>
> BTW for those interested in the mathematical basis for the algorithm, see my paper below.

> [@Crystal vs Go: Notes and Reflections](https://forum.crystal-lang.org/t/crystal-vs-go-notes-and-reflections/2989/4):
>
> Tonight I did some research into using WireGuard VPN. One commenter suggested using Tailscale - [https://tailscale.com/](https://tailscale.com/) - because their code is open source, and it turns out it’s written in Go. After looking at the code I immediately thought this is something that could be done well in Crystal too, but was never considered for use by that project. As WireGuard is an open protocol, and will likely become the most widely used VPN, this is the type of use case that a Crystal implementation c…

I would love to see a roadmap to provide true multi-threaded parallelism, even if its for 3.0, that doesn’t use `channels` as the means to synchronize operations.

There are a whole class of parallel algorithms|applications I would love to implement in Crystal that run best now in Rust|Nim|C++.

---

_[View the full topic](https://forum.crystal-lang.org/t/timeline-for-multithreading-support/3604)._
