So you can share objects among contexts?  Do you need to do anything special
to allow it?


On Monday, September 5, 2011, Rico Wind <[email protected]> wrote:
> Hi,
>
> So the simple answer to your simple question :-)
>
> Each iframe does _not_ have its own process, but it does, as you
> write, have its own context.
> If it had chrome could easily spawn several hundred processes for just
> a few iframe heavy pages, plus it would need to do a lot of
> inter-process communication. Actually, every tab does not necessarily
> end up in its own process (you can see the processes chrome is
> currently running in about:memory)
>
> Cheers,
> Rico
>
>
>
> On Fri, Sep 2, 2011 at 4:55 PM, mykes <[email protected]> wrote:
>> Forgive me for what is likely a simple question.
>>
>> In the browser, you can have a WWW page with an IFrame.  If the main
>> page has a JavaScript function:
>>
>> function foo(obj) {
>>   console.dir(obj);
>> }
>>
>> And the IFrame has JavaScript that calls top.foo(some_object), it
>> works as expected.
>>
>> But it seems to me that the main page and IFrame each have their own
>> context - separate processes, right?  And some_object was created in
>> the IFrame context, yet it can be examined in the page context.
>>
>> How is this achieved?
>>
>> To add to my questioning...
>>
>> If these are two different contexts, isn't it possible that there's
>> code running in the main page's context  at the exact moment the
>> IFrame calls top.foo() ?
>>
>> I would like to understand how in two separate processes running
>> nothing but V8, I can pass one context's variable to the other, and if
>> it's possible to have both contexts literally share the same object.
>>
>> For example, what if foo() in the main context looks like this:
>>
>> function foo(obj) {
>>  setInterval(function() { console.log(obj.bar); }, 1);
>> }
>>
>> And the code in the IFrame looks like this:
>>
>> top.foo(obj);
>> setInterval(function() { obj.bar++; }, 1);
>>
>> In fact, how is "top" itself implemented?  (A reference to one context
>> within another)
>>
>> Thanks in advance
>>
>> --
>> v8-users mailing list
>> [email protected]
>> http://groups.google.com/group/v8-users
>>
>
> --
> v8-users mailing list
> [email protected]
> http://groups.google.com/group/v8-users

-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users

Reply via email to