zoukankan      html  css  js  c++  java
  • Fiber VS Coroutine VS Green Thread

    纤程(Fiber)是一个轻量级的线程,它使用协作完成多任务,而不是使用抢占使用多任务。正在运行的Fiber必须显示让出以此允许其他Fiber运行,这使得Fiber的实现
    比内核线程和用户线程简单很多.Java有一个Fiber库

      

    协程(Coroutine)是一个组件,它被概括成多个子程序,允许多个进入点来暂停程序和恢复程序。但是和子程序又不一样,当前协程能够通过调用其他协程来退出,这就可能在稍后
    返回到在原始协程中调用的它们的位置。


    Green Thread 是由VM调用的线程,而不是由下层操作系统调用的线程.Green Thread模拟多线程环境而不用考虑本地OS的兼容能力,它们在用户空间中管理,而不是内核空间中
    管理,它们可以在没有本地线程支持的环境中工作。

    Java中使用的是Posix标准的Pthread。But

    Remember: "Pthreads" is an interface. How it's implemented depends on the platform. Linux uses kernel threads; Windows uses Win32 threads, etc.

    "Pthreads" is a library, based on the Posix standard. How a pthreads library is implemented will differ from platform to platform and library to library.

    You can query the specific implementation of pthreads under shell using command:

    getconf GNU_LIBPTHREAD_VERSION

  • 相关阅读:
    mydumper 备份工具
    k8s 二进制部署详解
    etcd+https部署
    Harbor + Https 部署
    Nginx+Tomcat+Memcache 实现session共享
    rap 部署
    Centos6.5下rsync+inotify的配置详解
    python2.7中MySQLdb的安装与使用详解
    Linux中普通用户提权为超级用户
    Mysql忘记密码
  • 原文地址:https://www.cnblogs.com/shuiyonglewodezzzzz/p/11152053.html
Copyright © 2011-2022 走看看