Friday, June 20, 2008

Fighting with "No more handles"

I have not found more irritating thing ever - actually there is the only thing (for me) that causes RCP to stop working.

Unfortunately handle limits are not written down anywhere - because they differ a lot depending on component and operating system. It is very often caused by 10 000 handles limit per process in Windows XP.

How to increase the number of available handles?

Someone clever told: "if you ask, you are wrong".

And this is completely right - do you really need 10000 thousand of controls on your form? Do you really need to be able to serve tens of views and editors at once?

You do not have so many controls? Install sleak and look for handle leaks.

If you went through two previous points, and you are completely sure, that you need every single control you are using, your interface is well designed and you do not have memory leaks... than please open your task manager, go to the processes view, select view -> select columns and check User Objects. You should see something like that:



Now please verify that there is a strong correlation between USER counts and the number of opened editors/views etc, and be sure that No More Handles occurs when User Handles approaches 10 000.

If you have confirmed, that you have really met a Windows limitation, please rethink once more your design.

And then go to http://support.microsoft.com/kb/327699 and follow their instructions. And be aware of their "limited" responsibility for that hotfix ;-).

Regards,
Chris

Saturday, June 7, 2008

GSOC 2008 Product Customization

For all of you who are interested in progress in my GSOC project: here is a category form my Frankfurt blog which I use to post the progress. Fortunately progress in the project is better than in blogging at this page :D