dotgnu-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [DotGNU]The new controls (was: Phoenix)


From: Simon Guindon
Subject: Re: [DotGNU]The new controls (was: Phoenix)
Date: Thu, 24 Jul 2003 23:44:14 -0400

Wow! good work, very impressed with this TextBox so far :) does the text
wrapping in TextBox allow other controls to text wrap as well now or is this
just implemented in TextBox?  I know theres a bunch of StringFormat that
handles all this.

Good work!, Take care,
Simon

----- Original Message ----- 
From: "Rhys Weatherley" <address@hidden>
To: <address@hidden>
Sent: Thursday, July 24, 2003 11:05 PM
Subject: Re: [DotGNU]The new controls (was: Phoenix)


> On Friday 25 July 2003 10:32 am, Gopal V wrote:
>
> > The TextBox thing keeps freezing after about 50 chars are typed
> > in ... (also the blinking caret fooled me into thinking I had
> > focus already)... I hope these are the bugginess  mentioned
> > above ?
>
> I've fixed the TextBox lockup now.  It was a consequence of not properly
> disposing "Graphics" objects that were created using "CreateGraphics()".
The
> exact sequence of events was something like this:
>
> - Main thread creates a graphics object, uses it, and then forgets about
it.
> - The main thread re-enters the main event loop in "Xsharp.Display", which
>   causes the display lock to be acquired.
> - The GC finalizes the graphics object, eventually calling the "Dispose"
>   method in "Xsharp.Graphics".
> - "Dispose" tries to acquire the display lock, and blocks waiting for the
>   main thread.
> - The user performs some action that causes an event.
> - The main thread wakes up, immediately tries to allocate something
(before
>   releasing the display lock), and then blocks waiting for the GC to
complete
>   the finalization process.  Which it never will because it is waiting for
the
>   display lock.
>
> Whoops!  Deadlock!
>
> By manually disposing the "Graphics" objects in "TextBox", the deadlock is
> avoided.
>
> I need to perform a little surgery on "Xsharp" to prevent the display lock
> from being held while waiting for an event, so that finalization will work
OK
> in the future, but the immediate problem has been solved.
>
> Cheers,
>
> Rhys.
>
> _______________________________________________
> Developers mailing list
> address@hidden
> http://dotgnu.org/mailman/listinfo/developers



reply via email to

[Prev in Thread] Current Thread [Next in Thread]