diff --git a/Lib/test/test_thread.py b/Lib/test/test_thread.py
index 02da94e..a45fb2f 100644
--- a/Lib/test/test_thread.py
+++ b/Lib/test/test_thread.py
@@ -97,10 +97,14 @@
         if verbose:
             print 'task', ident, 'leaving barrier', i
     mutex.acquire()
-    running = running - 1
-    if running == 0:
-        done.release()
+    running -= 1
+    # Must release mutex before releasing done, else the main thread can
+    # exit and set mutex to None as part of global teardown; then
+    # mutex.release() raises AttributeError.
+    finished = running == 0
     mutex.release()
+    if finished:
+        done.release()
 
 print '\n*** Barrier Test ***'
 if done.acquire(0):
diff --git a/Lib/test/test_threaded_import.py b/Lib/test/test_threaded_import.py
index e022c5f..d9f3d70 100644
--- a/Lib/test/test_threaded_import.py
+++ b/Lib/test/test_threaded_import.py
@@ -17,9 +17,13 @@
     x = random.randrange(1, 3)
     critical_section.acquire()
     N -= 1
-    if N == 0:
-        done.release()
+    # Must release critical_section before releasing done, else the main
+    # thread can exit and set critical_section to None as part of global
+    # teardown; then critical_section.release() raises AttributeError.
+    finished = N == 0
     critical_section.release()
+    if finished:
+        done.release()
 
 # Tricky:  When regrtest imports this module, the thread running regrtest
 # grabs the import lock and won't let go of it until this module returns.
