Skip to content
By using Twitter’s services you agree to our Cookies Use. We and our partners operate globally and use cookies, including for analytics, personalisation, and ads.

This is the legacy version of twitter.com. We will be shutting it down on June 1, 2020. Please switch to a supported browser, or disable the extension which masks your browser. You can see a list of supported browsers in our Help Center.

  • Home Home Home, current page.
  • About

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @
  • Language: English
    • Bahasa Indonesia
    • Bahasa Melayu
    • Català
    • Čeština
    • Dansk
    • Deutsch
    • English UK
    • Español
    • Filipino
    • Français
    • Hrvatski
    • Italiano
    • Magyar
    • Nederlands
    • Norsk
    • Polski
    • Português
    • Română
    • Slovenčina
    • Suomi
    • Svenska
    • Tiếng Việt
    • Türkçe
    • Ελληνικά
    • Български език
    • Русский
    • Српски
    • Українська мова
    • עִבְרִית
    • العربية
    • فارسی
    • मराठी
    • हिन्दी
    • বাংলা
    • ગુજરાતી
    • தமிழ்
    • ಕನ್ನಡ
    • ภาษาไทย
    • 한국어
    • 日本語
    • 简体中文
    • 繁體中文
  • Have an account? Log in
    Have an account?
    · Forgot password?

    New to Twitter?
    Sign up
pcwalton's profile
Patrick Walton
Patrick Walton
Patrick Walton
@pcwalton

Tweets

Patrick Walton

@pcwalton

Research engineer at Mozilla

San Francisco, CA
pcwalton.github.io
Joined November 2009

Tweets

  • © 2020 Twitter
  • About
  • Help Center
  • Terms
  • Privacy policy
  • Imprint
  • Cookies
  • Ads info
Dismiss
Previous
Next

Go to a person's profile

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @

Promote this Tweet

Block

  • Tweet with a location

    You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more

    Your lists

    Create a new list


    Under 100 characters, optional

    Privacy

    Copy link to Tweet

    Embed this Tweet

    Embed this Video

    Add this Tweet to your website by copying the code below. Learn more

    Add this video to your website by copying the code below. Learn more

    Hmm, there was a problem reaching the server.

    By embedding Twitter content in your website or app, you are agreeing to the Twitter Developer Agreement and Developer Policy.

    Preview

    Why you're seeing this ad

    Log in to Twitter

    · Forgot password?
    Don't have an account? Sign up »

    Sign up for Twitter

    Not on Twitter? Sign up, tune into the things you care about, and get updates as they happen.

    Sign up
    Have an account? Log in »

    Two-way (sending and receiving) short codes:

    Country Code For customers of
    United States 40404 (any)
    Canada 21212 (any)
    United Kingdom 86444 Vodafone, Orange, 3, O2
    Brazil 40404 Nextel, TIM
    Haiti 40404 Digicel, Voila
    Ireland 51210 Vodafone, O2
    India 53000 Bharti Airtel, Videocon, Reliance
    Indonesia 89887 AXIS, 3, Telkomsel, Indosat, XL Axiata
    Italy 4880804 Wind
    3424486444 Vodafone
    » See SMS short codes for other countries

    Confirmation

     

    Welcome home!

    This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.

    Tweets not working for you?

    Hover over the profile pic and click the Following button to unfollow any account.

    Say a lot with a little

    When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.

    Spread the word

    The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.

    Join the conversation

    Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.

    Learn the latest

    Get instant insight into what people are talking about now.

    Get more of what you love

    Follow more accounts to get instant updates about topics you care about.

    Find what's happening

    See the latest conversations about any topic instantly.

    Never miss a Moment

    Catch up instantly on the best stories happening as they unfold.

    Patrick Walton‏ @pcwalton 18 Jun 2019
    • Report Tweet
    • Report NetzDG Violation

    I’ve never understood the “async I/O is too complicated, why can’t we just use goroutines?” criticism of Rust. You can! They’re called threads, and they work great.

    7:04 AM - 18 Jun 2019
    • 23 Retweets
    • 157 Likes
    • Heng redforrest Denis Andrejew Konstantin Salikhov Gerard Klijs Tomasz Cichociński Bart Smaalders Nareshkumarreddy aleics
    15 replies 23 retweets 157 likes
      1. New conversation
      2. fresh tweets‏ @tweets_so_fresh 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @pcwalton

        but are they OS threads?

        2 replies 0 retweets 0 likes
      3. Patrick Walton‏ @pcwalton 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @tweets_so_fresh

        Yes, and that’s fine. Linux scales quite well to tons of OS threads.

        1 reply 1 retweet 0 likes
      4. 8 more replies
      1. New conversation
      2. Josh Simmons‏ @dotstdy 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @pcwalton

        The same reason go has goroutines and not raw threads.

        1 reply 0 retweets 2 likes
      3. Patrick Walton‏ @pcwalton 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @dotstdy

        We tried goroutines in Rust, and they weren’t really any more performant than OS threads. Certainly not enough to justify the complexity increase in FFI, etc.

        2 replies 1 retweet 10 likes
      4. 5 more replies
      1. New conversation
      2. Lúcás Meier‏ @cronokirby 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @pcwalton

        The main advantage that goroutines have over os threads is that they're only switched off once they reached IO that blocks, or a specific blocking concurrency operation in the language. I don't think os threads offer the same capability....

        1 reply 0 retweets 1 like
      3. Patrick Walton‏ @pcwalton 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @cronokirby

        Yes, they do. The kernel is better at that than userland is.

        1 reply 1 retweet 26 likes
      4. 5 more replies
      1. This Tweet is unavailable.
      2. Patrick Walton‏ @pcwalton 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation

        The point is that green threads aren’t that much more scalable than regular OS threads, and most people would be fine with just OS threads.

        2 replies 1 retweet 11 likes
      3. 5 more replies
      1. New conversation
      2. Toni Cárdenas‏ @tcardev 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @pcwalton

        I wish I could see a proper explanation about the real tradeoffs between M:N and native. I keep reading (from you, mainly) that green threads aren't worth it, but Go, Haskell, etc. surely wrote those huge runtimes for a reason...?

        2 replies 0 retweets 2 likes
      3. Toni Cárdenas‏ @tcardev 18 Jun 2019
        • Report Tweet
        • Report NetzDG Violation
        Replying to @tcardev @pcwalton

        Also, surely there must be _some_ advantages to using async IO that you'd lose by using sync IO on native threads. Otherwise, mio/async-await/etc. wouldn't exist. So surely that's a factor too, isn't it?

        1 reply 0 retweets 0 likes
      4. 4 more replies

    Loading seems to be taking a while.

    Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

      Promoted Tweet

      false

      • © 2020 Twitter
      • About
      • Help Center
      • Terms
      • Privacy policy
      • Imprint
      • Cookies
      • Ads info