[ python-Bugs-1702036 ] Turtle isn't thread-safe (crashes)

SourceForge.net noreply at sourceforge.net
Tue Apr 17 10:29:04 CEST 2007

Bugs item #1702036, was opened at 2007-04-17 08:29
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Library
Group: Python 2.5
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: lomm (korka)
Assigned to: Nobody/Anonymous (nobody)
Summary: Turtle isn't thread-safe (crashes)

Initial Comment:
These are a few examples of errors during code-reentry in the turtle module:

System tested: Windows XP sp2, Python 2.5

1. turtle.circle fails if the tkinter is closed while drawing.

# Code example:
import turtle
# close the tkinter window while the circle is drawing
# will give an "invalid command name" exception

2. using multiple inheritance, it's possible to draw more than 1 turtle running around at a time. This works part of the time, but crashes python completely on occasions.

# Code example:
import turtle, random
from threading import Thread

class Ninja(Thread, turtle.Turtle):
	'A ninja is a threaded turtle'
	def __init__(self):
		# constructors
		# where will i go?
		self.Direction = random.randint(-180,180)
	def run(self):
		# that way!
		# march 'forward'
		for i in range(50):
			self.left(22 - 45*random.random())

ninjas = []
for i in range(3):


You can respond by visiting: 

More information about the Python-bugs-list mailing list