DescriptionThis is a proof of concept I want to discuss, not code I want to commit.
It needs cleanup/refactoring, leaks memory and seems to hang on larger sites (e.g. heise.de).
But it generally works, e.g. here:
http://simple-adblock.com/faq/testing-your-adblocker/
Previously, each process had it's own FilterEngine instance. This is still the case, but FilterEngine::Matches() is now always called on the same instance, using IPC.
I'm using WM_COPYDATA for this because it seems to be the best approach without requiring admin rights, but the downside is that we have to do manual marshalling.
The marshalling should probably be more generic by allowing arbitrary data (not just strings) and prefixing each value with it's length (as opposed to using 0 as a delimiter).
What do you think, should we go ahead with this? The next thing I'll do is investigate why it's slow/hanging for larger sites.
Patch Set 1 #
MessagesTotal messages: 6
|