Google Chrome App: comportamiento webview

Mientras investigaba un tema en<iframe> en Chrome Extension, el<webview> en Chrome Apps me llamó la atención y me interesó.

Así que decidí hacer un pequeño ejemplo del problema al que me enfrento<iframe> y ver si<webview> hazlo resuelto Por lo que entendí de ver un video de Chrome Dev, elwebview se ejecuta en un proceso separado de su aplicación; no tiene los mismos permisos que tu aplicación. Así que supongo que si el contenido en las ejecuciones se separa de cierta manera del 'hilo principal' (aplicación), supongo que su contenido se ejecutará por separado, sin bloquear la aplicación o la otra en caso de que cualquiera de ellos pueda tener un posible ejecución de js de larga ejecución. Por eso hice lo siguiente:

background.js
chrome.app.runtime.onLaunched.addListener(function() {
  // Tell your app what to launch and how.
  chrome.app.window.create('window.html', {
      width: 1800,
      height: 1000
  });
});
manifest.json
{
  // Required
  "name": "Hello World!",
  "version": "0.1",
  "manifest_version": 2,

  // Recommended
  "description": "My first packaged app.",
  "icons": { "16": "calculator-16.png", "128": "calculator-128.png" },
  // "default_locale": "en",

  // Pick one (or none) OF browser_action, page_action, theme, app 

  "app": {
    "background": {
      "scripts": [ "background.js" ]
    }
  },

  "minimum_chrome_version": "23",

  "permissions": [ "webview" ]

}
window.html
<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    <div>Hello, world!</div>
    <webview id="wv1" style="width: 450px; height: 300px; border: 2px solid red" src="http://www.google.com"></webview>
    <webview id="wv2" style="width: 450px; height: 300px; border: 2px solid red" src="http://www.nytimes.com"></webview>
    <webview id="wv3" style="width: 450px; height: 300px; border: 2px solid red" src="http://www.stackoverflow.com"></webview>
    <webview id="wv4" style="width: 450px; height: 300px; border: 2px solid red" src="http://db.tt/FCCA7nuz"></webview>
  </body>
</html>

Tres de esas webviews son páginas web normales, la fuente es solo un ejemplo de un archivo js de larga ejecución, puede inspeccionar el código o puedo proporcionarlo más adelante. Si abriera 4 ventanas de google chrome browser, escriba la dirección, presione enter, lo que observaría es: 3 páginas cargadas inmediatamente y la otra con la ejecución js larga todavía estaría funcionando.

Si hago esto en una página web, utilizo para abrir estas 4 páginas web, ya que todo está en el mismo proceso, si 1 página es lenta / bloquea debido a la ejecución de js, todas las demás se bloquearán.

Ahora, con la aplicación Chrome, noté algo interesante y extraño acerca del comportamiento. Me doy cuenta de lo siguiente:

Si solo cargo las 3 primeras páginas web, la carga es rápida y 'al mismo tiempo' o así aparece;Si cargo todas las páginas web como están, veo las primeras 3 páginas cargando y la última, ya que tiene una larga ejecución de js, se demora y luego se muestra (este sería el comportamiento óptimo), ya que son procesos diferentes que no deberían No dependa de si una vista web es lenta, otros deben esperar;Ahora, si comento el tercero, actualizo y ejecuto la aplicación, no veo ninguna vista web hasta que se complete la que tiene el longscript. (¿Por qué sucede esto?)El punto anterior es aleatorio ya sea que suceda como lo mencioné o no.Y para el final, vamos a añadir otra.<webview id="wv5" style="width: 450px; height: 300px; border: 2px solid red" src="http://developer.chrome.com"></webview>, lo que sucederá para mí es: los tres primeros se cargan, el cuarto se ejecuta y, una vez finalizado y mostrado, veo el quinto renderizado.

Mi pregunta / duda principal es sobre el comportamiento y, dado que en realidad se ejecutan en un proceso separado, por qué no tiene el mismo comportamiento que una ventana del navegador, por ejemplo, ¿por qué esa vista web impide que las otras trabajen / se representen? para trabajar como es? ¿Debo hacer alguna solución para detectar si una vista web después de algún tiempo no ha terminado para omitir la carga y dejar que otros se carguen para poder volver a los lentos?

Gracias de antemano.

Respuestas a la pregunta(1)

Su respuesta a la pregunta