Having problems with building or using the CefSharp .NET binding? Ask your CEF-related questions here. Please ask general usage questions on
StackOverflow
.
Hi! I'm new, I'm self learning control CEF on Winform. I'm trouble at render process when make browsers on multi-tabs. When main render process got heavy load, all browsers got laggy. That's why I want each tab will have each main render process for reduce laggy. I had read alot guides and I know can solve my trouble with RequestContext. But I had confused because in that guides make many things I didn't understand. Someone please help me a simple example for me learn? Please don't throw guides to anymore, the point they having many things I don't need and make me confuse.
Here's my simple test (CefSharp Winform 86.0.241)
plus: not important, someone can tell me why LoadPageAsync in my test isn't work fine?
Using renderer-process-limit is not supported, limiting the number of render processes will cause you problems. Using process-per-tab is also not supported, neither is in process GPU.
You seem to have used a random set of arguments and config options, WindowlessRenderingEnabled should only be used for WPF/OffScreen. enable-begin-frame-scheduling also is for WPF/OffScreen.
These arguments are more likely the cause of your problem.
Also if you are having problems understand a piece of documentation start by quoting the specific piece and asking for clarification. Just saying you don't understand and it's confusing doesn't allow for meaningful feedback.
that's why I think make share render process is possible. Search with days, I see pepole say around requestcontext for make this.
But when I try do something like as "browser.requestcontext = new requestcontext();", I see the browser just have clean up, main render process still not change. Did I missed something need do more than?
Sorry I'm new and my english isn't good
The difference in performance is basically tied to the version. You are likely comparing two different versions.
As the sharpbrowser project is open source you can look at how they create the ChromiumWebBrowser instances and the settings passed to Cef.Initialize as a reference.
A RequestContext can be used to isolate sites of the same origin, sites of different origins will always use different render process.
of couse I had tried same same with its version 89 and only tested with my game. Now I'm trying around with other guides
I'm also look its source codes, but it have many things and many links, it's make hard for a newbie like as me
RequestContext is just my think, maybe I'm wrong, my point is share render process. Tried a week for find solution but I can't solve it, that's why I must find help at here
If you are not bothered, please give me a simple idea or example for share render process solution
So you have a working reference in SharpBrowser, so let's start there. Does SharpBrowser use a RequestContext to isolate it's ChromiumWebBrowser instances?
I've you tried removing all the command line args/settings except CachePath? You've got a mess of unsupported options that you are using.
It's possible the difference between your application and SharpBrowser is how the tabs behave, they appear to be using some form of custom BrowserTabStrip