Adam,
Thank you very much for that link. It was extremely helpful, and setting WebCacheModelDocumentViewer made the memory usage much cleaner. At the end of the day, I was still unhappy with the amount of memory WebKit was using in the application, so I decided to go a different route. I created a subproject WebKitHelper background application that I spin off using NSTask. That helper grabs the favicon and renders the thumbnail, pipes them both back to the main application, and then exits. Now, I don't have to worry about how much memory is getting used, or when I can safely release the WebView, etc. When I've got everything I need, WebKitHelper terminates, and I'm good to go. If anyone is interested in that code, let me know, and I will wrap it up and upload it somewhere.


On Jun 7, 2008, at 11:02 AM, Adam R. Maxwell wrote:


On Jun 7, 2008, at 6:26 AM, Timothy Ritchey wrote:


On Jun 7, 2008, at 1:32 AM, Adam R. Maxwell wrote:

From a quick check with Instruments, it looks like internal WebKit stuff is retaining the view for callbacks even after it's done loading, then releasing it on a later pass through the runloop. I wouldn't worry about it unless you're actually leaking the object.

From what I can tell by watching several instrument runs, it seems like WebKit is internally caching stuff. If I go to cnn.com, I see a major memory bump, but I can go to it again and again and not see any increase, but when I go to a new website, say digg.com, I see another memory bump again. Even if I let the application run for a while, it never seems to go back down. The only reason I am using webkit is to grab these thumbnails, which happens once, and need to be refreshed very rarely, if ever. I'm trying to read up on how to alter the caching behavior of WebKit now.

Sounds like we have similar usage scenarios. You have to read the header to find out about caching behavior, but I set it to WebCacheModelDocumentViewer for lowest memory usage, since I draw the webview to a bitmap and never load it again. I also set the WebView prefs to disable plugins and other stuff as well; the code is all BSD licensed, if you're curious.

http://tcobrowser.svn.sf.net/svnroot/tcobrowser/trunk/bibdesk/vendorsrc/amaxwell/FileView/FVWebViewIcon.m

--
Adam

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to