Have you fixed this issue, Brian? I'm also interesting on solution.

среда, 11 апреля 2012 г., 3:02:20 UTC+4 пользователь BrianG написал:
>
> Hello All, 
>
> I'm trying to understand why the following code would break on an 
> upgrade from v8 3.3 to 3.9. The code segfaults when creating a new 
> handle_scope, if I remove the handle scope inside the while loop it 
> will run but will quickly run out of memory. The segfault i'm 
> receiving is: 
>
> #0  0x00007fffecdc8942 in 
> v8::internal::HandleScope::DeleteExtensions(v8::internal::Isolate*) () 
> from 
> #1  0x00007fffecd43117 in render::engine::(anonymous 
> namespace)::threadLoaded (data=<value optimized out>) at engine.cpp: 
> 411 
> #2  0x00000000004b857c in ink_thread_trampoline (data=<value optimized 
> out>) at InkIOCoreAPI.cc:116 
> #3  0x0000003b93a077e1 in start_thread () from /lib64/libpthread.so.0 
> #4  0x0000003b936e68ed in clone () from /lib64/libc.so.6 
>
> The code is as follows: 
>
>   v8::Isolate* isolate = v8::Isolate::New(); 
>   v8::Isolate::Scope isolate_scope(isolate); // enter isolate 
>   v8::Locker locker(isolate); 
>
>   v8::HandleScope handle_scope; 
>   v8::Persistent<v8::Context> context = v8::Context::New(); 
>   v8::Context::Scope context_scope(context); // enter base context 
>
>   // do some stuff 
>
>   while (true) { 
>     // Create a new context 
>     v8::HandleScope per_request_handle_scope; 
>     v8::Persistent<v8::Context> per_request_context = 
> v8::Context::New(); 
>     v8::Context::Scope 
> per_request_context_scope(per_request_context); // enter context 
>
>       // do some stuff 
>
>     per_request_context.Dispose(); // As always, dispose of the 
> context.. 
>   } /*

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

Reply via email to