Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 505651
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T06:37:13+00:00 2026-05-13T06:37:13+00:00

We are planning to write a highly concurrent application in any of the Very-High

  • 0

We are planning to write a highly concurrent application in any of the Very-High Level programming languages.

1) Do Python, Ruby, or Haskell support true multithreading?

2) If a program contains threads, will a Virtual Machine automatically assign work to multiple cores (or to physical CPUs if there is more than 1 CPU on the mainboard)?

True multithreading = multiple independent threads of execution utilize the resources provided by multiple cores (not by only 1 core).

False multithreading = threads emulate multithreaded environments without relying on any native OS capabilities.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T06:37:13+00:00Added an answer on May 13, 2026 at 6:37 am

    1) Do Python, Ruby, or Haskell support true multithreading?

    This has nothing to do with the language. It is a question of the hardware (if the machine only has 1 CPU, it is simply physically impossible to execute two instructions at the same time), the Operating System (again, if the OS doesn’t support true multithreading, there is nothing you can do) and the language implementation / execution engine.

    Unless the language specification explicitly forbids or enforces true multithreading, this has absolutely nothing whatsoever to do with the language.

    All the languages that you mention, plus all the languages that have been mentioned in the answers so far, have multiple implementations, some of which support true multithreading, some don’t, and some are built on top of other execution engines which might or might not support true multithreading.

    Take Ruby, for example. Here are just some of its implementations and their threading models:

    • MRI: green threads, no true multithreading
    • YARV: OS threads, no true multithreading
    • Rubinius: OS threads, true multithreading
    • MacRuby: OS threads, true multithreading
    • JRuby, XRuby: JVM threads, depends on the JVM (if the JVM supports true multithreading, then JRuby/XRuby does, too, if the JVM doesn’t, then there’s nothing they can do about it)
    • IronRuby, Ruby.NET: just like JRuby, XRuby, but on the CLI instead of on the JVM

    See also my answer to another similar question about Ruby. (Note that that answer is more than a year old, and some of it is no longer accurate. Rubinius, for example, uses truly concurrent native threads now, instead of truly concurrent green threads. Also, since then, several new Ruby implementations have emerged, such as BlueRuby, tinyrb, Ruby Go Lightly, Red Sun and SmallRuby.)

    Similar for Python:

    • CPython: native threads, no true multithreading
    • PyPy: native threads, depends on the execution engine (PyPy can run natively, or on top of a JVM, or on top of a CLI, or on top of another Python execution engine. Whenever the underlying platform supports true multithreading, PyPy does, too.)
    • Unladen Swallow: native threads, currently no true multithreading, but fix is planned
    • Jython: JVM threads, see JRuby
    • IronPython: CLI threads, see IronRuby

    For Haskell, at least the Glorious Glasgow Haskell Compiler supports true multithreading with native threads. I don’t know about UHC, LHC, JHC, YHC, HUGS or all the others.

    For Erlang, both BEAM and HiPE support true multithreading with green threads.

    2) If a program contains threads, will a Virtual Machine automatically assign work to multiple cores (or to physical CPUs if there is more than 1 CPU on the mainboard)?

    Again: this depends on the Virtual Machine, the Operating System and the hardware. Also, some of the implementations mentioned above, don’t even have Virtual Machines.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm planning to write a pluggable application in python (+qt4). However I have great
I'm planning to write a web application (.net probably) that will need to analyze
I am planning to write a Swing-based application (using Netbeans 6.8). It seems that
I am planning to write web service in python. But, I found wsgi also
We are planning to write an application that, in its start phase will be
I'm planning to write couple applications for iPhone and wonder if there are any
I am planning to write an object-oriented shell (based on Python). I have many
I'm planning to write a diagram editor-style application, where you organize objects on a
I'm planning to write an application that would provide results in quick search box.
I am planning to write an API using PHP and and I am very

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.