bug: unstable myThreadId in GHC 6.6.1

2009-04-10 Thread Bulat Ziganshin
Hello glasgow-haskell-users,

i've looked for this bug in Trac but don't found anything. so:

startGUI action = runInBoundThread $ do
  unsafeInitGUIForThreadedRTS
  myThreadId = writeIORef guiThread
  action = widgetShowAll
  mainGUI

guiThread  =  unsafePerformIO$ newIORef$ error undefined GUI::guiThread


Later in the same thread i ask for myThreadId and get different value.
interesting that value returned in startGUI is 23 while later values
are about 7000. probably this reflects total amount of threads created
so far

so that's the problem. Win API call returns constant thread number
(that looks natural since the thread is bound). so either:

1) it's feature - please mention this in docs
2) it was fixed since 6.6.1
3) we need full-scale bugreport using 6.10.2


-- 
Best regards,
 Bulat  mailto:bulat.zigans...@gmail.com

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: bug: unstable myThreadId in GHC 6.6.1

2009-04-10 Thread Don Stewart
Could you send a full example we can compile and test?
This is only a fragment.

bulat.ziganshin:
 Hello glasgow-haskell-users,
 
 i've looked for this bug in Trac but don't found anything. so:
 
 startGUI action = runInBoundThread $ do
   unsafeInitGUIForThreadedRTS
   myThreadId = writeIORef guiThread
   action = widgetShowAll
   mainGUI
 
 guiThread  =  unsafePerformIO$ newIORef$ error undefined GUI::guiThread
 
 
 Later in the same thread i ask for myThreadId and get different value.
 interesting that value returned in startGUI is 23 while later values
 are about 7000. probably this reflects total amount of threads created
 so far
 
 so that's the problem. Win API call returns constant thread number
 (that looks natural since the thread is bound). so either:
 
 1) it's feature - please mention this in docs
 2) it was fixed since 6.6.1
 3) we need full-scale bugreport using 6.10.2
 
 
 -- 
 Best regards,
  Bulat  mailto:bulat.zigans...@gmail.com
 
 ___
 Glasgow-haskell-users mailing list
 Glasgow-haskell-users@haskell.org
 http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re[2]: bug: unstable myThreadId in GHC 6.6.1

2009-04-10 Thread Bulat Ziganshin
Hello Don,

Friday, April 10, 2009, 8:36:32 PM, you wrote:

unfortunately, full example is my whole program. i will try to make
short example if someone will say that it looks like a bug and it was
not fixed in intermediate versions. basically, scenario is simple -
myThreadId changed due the life of (bound) thread

 Could you send a full example we can compile and test?
 This is only a fragment.

 bulat.ziganshin:
 Hello glasgow-haskell-users,
 
 i've looked for this bug in Trac but don't found anything. so:
 
 startGUI action = runInBoundThread $ do
   unsafeInitGUIForThreadedRTS
   myThreadId = writeIORef guiThread
   action = widgetShowAll
   mainGUI
 
 guiThread  =  unsafePerformIO$ newIORef$ error undefined GUI::guiThread
 
 
 Later in the same thread i ask for myThreadId and get different value.
 interesting that value returned in startGUI is 23 while later values
 are about 7000. probably this reflects total amount of threads created
 so far
 
 so that's the problem. Win API call returns constant thread number
 (that looks natural since the thread is bound). so either:
 
 1) it's feature - please mention this in docs
 2) it was fixed since 6.6.1
 3) we need full-scale bugreport using 6.10.2
 
 
 -- 
 Best regards,
  Bulat  mailto:bulat.zigans...@gmail.com
 
 ___
 Glasgow-haskell-users mailing list
 Glasgow-haskell-users@haskell.org
 http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


-- 
Best regards,
 Bulatmailto:bulat.zigans...@gmail.com

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users