Hmm, maybe you don't realize how my implementation works.
I don't update everything every time view changes(btw. you should know that it is fast enough for most games). I update only rows or columns that appeared on the screen since last update. I would say, that it is even faster than static array, cause I draw only tiles that are visible and with only one draw call. Your approach would draw whole chunk even if we see only one tile from it.
Sorry for resurrecting this thread, this method is of particular interest to me. I've looked around to find what this technique is called or any algorithms, couldn't find any info on it.
Awhile back I thought of this too for not just activating/deactivating objects but dealing with tile data over a network. I'd be very interesting in seeing your method, mine was a little bulky. Having to consider multiple tile skipping, all angles while making sure it's faultless.