Woodrow.wiki
  • Hello World
  • Meta
    • Worflow & Structure
  • Footprint
    • Cover Letter
  • Cheatsheets
    • Awesome-Cheatsheets
  • Writing
    • Markdown
  • Art
    • Tattoos
    • Music
  • Computer Science
    • Data Structures
    • Algorithms
      • Compression
    • Parsing
    • Formal verification
      • TLA+
    • Automata theory
  • Programming
    • Git
    • Concurrency
    • Regex
    • Hashing
    • Functional programming
    • Semantic versioning
    • Reverse engineering
    • Protocol Buffers
    • Coding practice
    • Serialization
    • Competitive Programming
    • Design patterns
    • System Design
    • Continuous Integration
    • Documentation
    • Embedded systems
    • Encoding
    • Interactive computing
    • Quantum programming
  • Web
    • Browsers
      • Safari
      • Google Chrome
        • Chrome DevTools
      • Firefox
      • Bookmarklets
      • Stylish themes
        • Web performance
        • Service workers
        • Static sites
      • Hugo
        • Node.js
        • Deno
        • WebAssembly
        • SEO
        • Electron
        • Webpack
        • Rollup
        • WebRTC
        • Search engines
        • Web engines
      • WebKit
        • Progressive Web Apps
        • Web workers
        • Web scraping
    • RSS
    • Web accessibility
      • Content management systems
      • JAMstack
        • Redwood
  • Front End
    • CSS
      • CSS Grid
      • Tailwind CSS
      • CSS in JS
    • HTML
  • Programming languages
    • Go
      • Go libraries
    • Python
      • Python libraries
    • Swift
      • Swift libraries
    • Rust
      • Rust libraries
    • Haskell
      • Haskell libraries
    • JavaScript
      • ESLint
      • Babel
    • JS libraries
      • Gatsby JS
      • Next.js
      • React
      • Three.js
      • Expo
      • Vue.js
    • TypeScript
      • TypeScript libraries
    • Scala
      • Scala libraries
    • Bash
    • Clojure
      • ClojureScript
    • Erlang
    • Java
      • Java libraries
    • Kotlin
      • Kotlin libraries
    • C
      • C libraries
    • Lua
    • Ruby
    • C++
      • C++ libraries
    • Julia
      • Julia libraries
    • Dart
      • Flutter
    • R
    • Assembly
    • Processing
  • Data Science
    • Visualization
  • Open Source
  • Text editors
    • Vim
      • Vim plugins
    • Sublime Text
      • Sublime Text plugins
    • Emacs
  • Distributed systems
    • RPCs
      • gRPC
    • Load balancing
    • Message queue
      • ZeroMQ
  • Containers
    • Kubernetes
    • Docker
  • Cloud computing
    • AWS
      • AWS Lambda
  • Operating systems
    • Linux
      • NixOS
    • BSD
    • Windows
  • Package managers
    • brew
  • DevOps
    • SRE
      • Security
  • Unix
    • Shell
      • Zsh
        • Zsh plugins
    • My file system
    • Dotfiles
  • Networking
    • HTTP
    • DNS
    • Peer to peer
      • IPFS
      • BitTorrent
    • Internet of things
      • LoRaWAN
    • Microservices
    • Decentralization
    • Nginx
    • VPN
      • WireGuard
    • GraphQL
    • SSH
    • Domains
    • QUIC
    • WebSocket
    • File sharing
  • Tools
    • CodeSandbox
    • GitBook
    • Dropbox
    • Telegram
    • Product Hunt
    • DuckDuckGo
    • IFTTT
    • Dat
    • Email
  • Analytics
  • Databases
    • PostgreSQL
    • Redis
    • RabbitMQ
    • DynamoDB
    • FoundationDB
    • SQL
    • Memcached
  • Psychology
    • Addiction
    • Biases
    • Negotiating
    • Marketing
  • Work
    • Finding work
      • Interviews
      • CV
      • Hiring
      • Contracting
    • Remote work
    • Consultancies
  • Management
    • Product Management
  • CLI
    • sed
    • tmux
  • Podcasts
Powered by GitBook
On this page
  • Notes
  • Links

Was this helpful?

  1. Programming

Concurrency

Concurrency is the composition of independently executing computations.

Notes

  • Race condition occurs when two or more threads can access shared data and they try to change it at the same time.

  • Concurrency is when two or more tasks can start, run, and complete in overlapping time periods. It doesn't necessarily mean they'll ever both be running at the same instant. For example, multitasking on a single-core machine.

Links

  • The Deadlock Empire - Interactive exercises.

  • Structured Concurrency

  • A Separation Logic for Concurrent Randomized Programs

PreviousGitNextRegex

Last updated 6 years ago

Was this helpful?