Uma fibra é um encadeamento leve que usa multitarefa cooperativa em vez de multitarefa preemptiva. Uma fibra em execução deve "ceder" explicitamente para permitir a execução de outra fibra, o que torna sua implementação muito mais fácil do que os threads do kernel ou do usuário.
Uma Coroutine é um componente que generaliza uma sub-rotina para permitir vários pontos de entrada para suspender e retomar a execução em determinados locais. Diferentemente das sub-rotinas, as corotinas podem sair chamando outras corotinas, que podem retornar mais tarde ao ponto em que foram invocadas na corotina original.
Um Thread Verde é um thread agendado por uma máquina virtual (VM) em vez de nativamente pelo sistema operacional subjacente. Os threads verdes emulam ambientes multithread sem confiar em nenhum recurso nativo do sistema operacional e são gerenciados no espaço do usuário em vez do espaço do kernel, permitindo que trabalhem em ambientes que não têm suporte de thread nativo.