GNU social JP
  • FAQ
  • Login
GNU social JPは日本のGNU socialサーバーです。
Usage/ToS/admin/test/Pleroma FE
  • Public

    • Public
    • Network
    • Groups
    • Featured
    • Popular
    • People

Conversation

Notices

  1. Embed this notice
    cliffle@hachyderm.io's status on Friday, 25-Nov-2022 09:11:21 JST cliffle cliffle

    Here's an article I've been meaning to write, gauging interest:

    In Java/C/etc a lot of thread safety advice comes down to "always be thread safe because you never know." Synchronized methods, mutexes hiding in data structures, etc.

    #Rust makes it easier to write thread-safe code, but it also makes it _possible_ to write code that _can't_ be used across threads, and thus doesn't have to be thread-safe. This reduces complexity and improves performance by avoiding all that defensive coding.

    In conversation Friday, 25-Nov-2022 09:11:21 JST from hachyderm.io permalink
    • Masanori Ogino 𓀁 repeated this.
    • Embed this notice
      cliffle@hachyderm.io's status on Friday, 25-Nov-2022 09:11:21 JST cliffle cliffle
      in reply to

      Thanks for the feedback, folks! I've posted a first version of this article: https://cliffle.com/blog/not-thread-safe/

      This looks at one of my favorite features of Rust: how it enables me _not_ to write all my data structures as thread-safe... and yet still have concurrent programs without data races.

      Less code, less complexity, more reliability. Magic! ✨

      ...well, ok, type systems, but type systems are a sort of magic. ?

      In conversation Friday, 25-Nov-2022 09:11:21 JST permalink

      Attachments

      1. No result found on File_thumbnail lookup.
        Cliffle

Feeds

  • Activity Streams
  • RSS 2.0
  • Atom
  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.