--- a/kerneltest/e32test/benchmark/thread.cpp Mon May 24 18:45:46 2010 +0100
+++ b/kerneltest/e32test/benchmark/thread.cpp Thu Jun 10 11:48:01 2010 +0100
@@ -164,8 +164,10 @@
TInt r = child.Create(KNullDesC, Thread::KillingChild, 0x2000, NULL, NULL);
BM_ERROR(r, r == KErrNone);
child.Logon(st);
+ BMProgram::SetAbsPriority(RThread(), KBMPriorityLow);
+ child.Resume();
+ User::After(1000); // Give the child thread a chance to run - killing it too earlier can leave the heap locked
BMProgram::SetAbsPriority(RThread(), KBMPriorityHigh);
- child.Resume();
TBMTicks t1;
::bmTimer.Stamp(&t1);
child.Kill(KErrCancel);