Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

gh-135944: Add a "Runtime Components" Section to the Execution Model Docs#135945

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Open
ericsnowcurrently wants to merge1 commit intopython:main
base:main
Choose a base branch
Loading
fromericsnowcurrently:exec-model-runtime-components

Conversation

ericsnowcurrently
Copy link
Member

@ericsnowcurrentlyericsnowcurrently commentedJun 25, 2025
edited by github-actionsbot
Loading

The section provides a brief overview of the Python runtime's execution environment.

This is meant to be implementation agnostic, If that doesn't hold true then we should take a different approach.


📚 Documentation preview 📚:https://cpython-previews--135945.org.readthedocs.build/

@@ -398,6 +398,75 @@ See also the description of the :keyword:`try` statement in section :ref:`try`
and:keyword:`raise` statement in section:ref:`raise`.


.. _execcomponents:

Runtime Components

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

I think it would be a good idea to mention that this is CPython specific. Other implementations are allowed to have different runtime models.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

This is meant to be implementation agnostic

Oh, oops, didn't see this. Some parts are CPython specific here, though.

Copy link
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

I'm trying to avoid any CPython-specific notions here. Do you have an example of another runtime model?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

No, I'm not familiar with how any other implementations work, this is coming solely off a bit of speculation on my part. My concern is that a thread is inherently CPython-specific, because some Python implementations exist in areas that don't have access to OS threads, such as Brython for JS, and probably MicroPython/CircuitPython for some microcontrollers.

I do think that this is a great section to have for subinterpreters, I just think it'd be better to keep some parts of it CPython specific. Does that make sense?

While a program always starts with exactly one of each of those, it may
grow to include multiple of each. Hosts and processes are isolated and
independent from one another. However, threads are not. Each thread

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

There should probably be some mention of the GIL here.

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@ZeroIntensityZeroIntensityZeroIntensity left review comments

@willingcwillingcAwaiting requested review from willingcwillingc is a code owner

@AA-TurnerAA-TurnerAwaiting requested review from AA-TurnerAA-Turner is a code owner

Assignees
No one assigned
Labels
awaiting core reviewdocsDocumentation in the Doc dirneeds backport to 3.13bugs and security fixesneeds backport to 3.14bugs and security fixesskip news
Projects
Status: Todo
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

2 participants
@ericsnowcurrently@ZeroIntensity

[8]ページ先頭

©2009-2025 Movatter.jp