繁体   English   中英

如何在Java中实现Go的无缓冲通道?

[英]How would I implement Go's unbuffered channels in Java?

Go提供了无缓冲和缓冲通道,用于goroutine(线程)之间的通信。 在Java中将缓冲通道实现为有界缓冲区很简单

Go的非缓冲通道需要一个goroutine在发送时发送另一个goroutine。 谁能向我解释如何在Java中实现它?

我建议您也研究一下JCSP库。 此答案中还有JCSP的更多细节。

Java没有等效于Goroutines的东西。 (曾经,很久以前就有“绿色线程”,但被放弃了)。 因此,如果您改用线程,则一旦线程数量开始变得有趣(例如,超过一万),您将承受大量内存占用。 每个Java线程都需要一个操作系统线程和一个大堆栈空间。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM