<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Scheduler on Bits, Trades &amp; Systems</title>
    <link>https://blog.turboawesome.win/tags/scheduler/</link>
    <description>Recent content in Scheduler on Bits, Trades &amp; Systems</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 12 Aug 2020 10:27:00 +0000</lastBuildDate>
    <atom:link href="https://blog.turboawesome.win/tags/scheduler/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Go&#39;s Scheduler: GOMAXPROCS, Work Stealing, and Why It Matters</title>
      <link>https://blog.turboawesome.win/2020/08/gos-scheduler-gomaxprocs-work-stealing-and-why-it-matters/</link>
      <pubDate>Wed, 12 Aug 2020 10:27:00 +0000</pubDate>
      <guid>https://blog.turboawesome.win/2020/08/gos-scheduler-gomaxprocs-work-stealing-and-why-it-matters/</guid>
      <description>Go&amp;#39;s M:N scheduler is one of the reasons goroutines are cheap enough to use liberally. Understanding how it works changes how you reason about concurrency bugs and performance anomalies.</description>
    </item>
    <item>
      <title>Goroutines Are Not Threads: The Mental Model Shift</title>
      <link>https://blog.turboawesome.win/2019/04/goroutines-are-not-threads-the-mental-model-shift/</link>
      <pubDate>Mon, 22 Apr 2019 13:07:00 +0000</pubDate>
      <guid>https://blog.turboawesome.win/2019/04/goroutines-are-not-threads-the-mental-model-shift/</guid>
      <description>Coming from Java, I initially modelled goroutines as lightweight threads. That model is mostly right but subtly wrong in ways that matter — understanding the Go scheduler changes how you think about goroutine lifecycle and blocking.</description>
    </item>
  </channel>
</rss>
