I have a view with block display that shows a user's picture and profile info. The view is cached for 1 hour.
How can I expire that cache when the user updates the profile?
I ended up using Views Cache Actions. It allows to use rules to expire a specific view or views displays when a certain event occurs (like user profile save).
Give it a try Views Content Cache
This module implements a views cache plugin that is aware of content and can provide caching for views, until the content in those views changes.
Since, profile content is saved as a node the above module should work as it tell. Try and let us know !
If above module doesn't address the isue we are looking for then use hook_profile2_update to hook into profile update and use the logic in above module to clear cache of a respective views block.