Talk:Fiber (computer science)

message: Fibers are already explained with somewhat more detail on thread (computer science). Maybe fiber (computer science) and thread (computer science) (and possibly computer multitasking) should be refactored? —Tobias Bergemann 17:29, 18 December 2006 (UTC)
replies: text: Not merge; they're different concepts with some confusion of vocabulary. (Fibers are strictly cooperatively multitasked, and so don't need to worry about thread safety etc.) Some degree of refactoring might help, I guess; what are you suggesting? --EdC 00:51, 19 December 2006 (UTC)
replies: text: Hm. I really don't know. As you wrote, there appears to be some confusion of vocabulary. I am not sure I understand the difference between fibers and coroutines, and I only ever have heard the term fiber used in the context of Microsoft Windows. So I would say: Either merge fiber (computer science) back into thread (computer science) (or perhaps coroutines), or add some references for the usage of the term fiber, or add some description of the Windows API. —Tobias Bergemann 10:29, 19 December 2006 (UTC)
replies: text: Well, I've taken the latter two options; I don't really know the Windows API all that well (though it appears fairly straightforward) but have linked into MSDN. I think the distinction is – at the level of the Windows API certainly – that coroutines are a technique, while fibers are a facility. --EdC 01:30, 24 December 2006 (UTC)
replies: text: No, the difference is that "coroutine" is a long-standing computer science term and "fiber" is a Windows buzzword for market differentiation ("look at this cool new feature guys!"). This page is just a Microsoft shill masquerading as "computer science". It should probably be reduced into a 1-2 sentence summary and be merged in the coroutine article.  — Preceding unsigned comment added by 82.9.176.129 (talk) 10:17, 27 October 2013 (UTC)
thread_title:  Merge/refactor? 

message: There is an article on Continuation. Fibers appear to be very similar to continuations. If they are the same, perhaps the articles should be merged. If they are not the same, then perhaps a reference and some distinctions should be added to the article. Kevin99 18:06, 21 February 2007 (UTC)
replies: text: Fibers can be implemented using continuations, but not the other way around. Continuations are essentially a first-class object containing the current state of a fiber - but can be invoked more than once (or not at all). Schemers frequently implement fibers this way using a few lines of code, in fact. Anaholic (talk) 10:12, 7 December 2007 (UTC)
thread_title:  Similar to continuation? 

message: I disagree with removing the fibre term.  Right, it's a UK word.  But UK people would look for it.  Note that I haven't reverted the utilise->utilize because there it is indeed just a matter of US vs UK style.  But when it comes to glossary, we should really provide both UK and US words.  —Preceding unsigned comment added by SamuelThibault (talk • contribs) 10:04, 9 February 2009 (UTC)
replies: text: Then they'll find it on the Fiber disambiguation page.  —Preceding unsigned comment added by 70.130.236.56 (talk) 02:00, 26 February 2009 (UTC)
replies: text: So have it in one place (first paragraph) and then consistently use one or the other the rest of the time. Given the origin of this whole terminology according to what I could scare up on the web seems to be the US — and it is only in that form that it is used in APIs — that's what should be the senior term on this page. Donal Fellows (talk) 09:06, 26 February 2009 (UTC)
thread_title:  Fiber vs Fibre 

message: I would like to gather consensus to remove this article. As mentioned numerous times above, this concept already has a name -- "coroutine" -- which has been around for a very long time and has a great deal of academic literature behind it. "Fiber" is essentially Microsoft's re-branded name for coroutines. It's deserving of a small mention on the coroutine page at best. It certainly doesn't warrant it's own article, masquerading as a fundamental "computer science" concept. Opinions?...
: Agree completely. This concept has long been known as a coroutine, and there is no reason to allow well-established computer science terminology to fall prey to the marketing strategy of Embrace_extend_extinguish.  — Preceding unsigned comment added by 106.138.69.184 (talk) 06:19, 15 May 2014 (UTC)
replies: text: Disagree completely. Coroutines were initially done in the assembler and acted like generalized functions per Knuth, Conway. Later in the presence of higher-level languages coroutines were emulated by fibers (user mode stack switching even though the term Fiber did not exist, that was effectively what they were doing). Fibers can be used to emulate coroutines, but fibers and coroutines are not the same.  — Preceding unsigned comment added by 73.53.38.236 (talk) 01:31, 12 October 2015 (UTC)
thread_title:  Motion to delete 

message: The first line says "However, fibers use co-operative multitasking while threads use pre-emptive multitasking.". Threads can be co-operatively multitasked as well (though I accept its not that common now days). See for example https://en.wikipedia.org/wiki/Thread_(computing) (under scheduling): "Operating systems schedule threads either preemptively or cooperatively" or the classic http://mirror.informatimago.com/next/developer.apple.com/documentation/macos8/pdf/ThreadManager.pdf
Off the top of my head I would say the difference is that there is only ever one fibre running at a time - something not guaranteed for threads - but I don't know if that is really the distinguishing feature so I haven't yet made the change.  — Preceding unsigned comment added by Cqexbesd (talk • contribs) 13:28, 19 April 2017 (UTC)
replies: text: I came here to say the exact same thing. The definition of a thread has nothing to do with how it is scheduled.  — Preceding unsigned comment added by 192.31.106.34 (talk) 15:14, 26 February 2018 (UTC)
thread_title:  Threads can be co-operative