From d1857d30fc05f29fb82231336b229e50948a8336 Mon Sep 17 00:00:00 2001 From: Eric Holk Date: Tue, 31 May 2011 17:44:54 -0700 Subject: This is the mega-ucontext commit. It replaces the task switching mechanism with a new one inspired by ucontext. It works under Linux, OS X and Windows, and is Valgrind clean on Linux and OS X (provided the runtime is built with gcc). This commit also moves yield and join to the standard library, as requested in #42. Join is currently a no-op though. --- src/rt/rust_kernel.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/rt/rust_kernel.cpp') diff --git a/src/rt/rust_kernel.cpp b/src/rt/rust_kernel.cpp index 3c2ad01128e..f72da483c35 100644 --- a/src/rt/rust_kernel.cpp +++ b/src/rt/rust_kernel.cpp @@ -187,8 +187,11 @@ rust_kernel::~rust_kernel() { KLOG("freeing handles"); free_handles(_task_handles); + KLOG("..task handles freed"); free_handles(_port_handles); + KLOG("..port handles freed"); free_handles(_dom_handles); + KLOG("..dom handles freed"); KLOG("freeing queues"); @@ -214,6 +217,7 @@ rust_kernel::free_handles(hash_map* > &map) { T* key; rust_handle *value; while (map.pop(&key, &value)) { + KLOG("...freeing " PTR, value); delete value; } } -- cgit 1.4.1-3-g733a5