From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from resqmta-ch2-07v.sys.comcast.net (resqmta-ch2-07v.sys.comcast.net [IPv6:2001:558:fe21:29:69:252:207:39]) by hurricane.the-brannons.com (Postfix) with ESMTPS id C09AE77BBB for ; Fri, 28 Jul 2017 10:38:54 -0700 (PDT) Received: from resomta-ch2-09v.sys.comcast.net ([69.252.207.105]) by resqmta-ch2-07v.sys.comcast.net with ESMTP id b9DxdoyeAQv7cb9EFd2GVj; Fri, 28 Jul 2017 17:39:11 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20161114; t=1501263551; bh=8XEGvkaOLRGBbBMWOBzZBzvKniuPIxlzBhFk12zUqkY=; h=Received:Received:To:From:Reply-to:Subject:Date:Message-ID: Mime-Version:Content-Type; b=DHeyWExU+8eQtKa1XQl+eZsnaMsDYKNREO3VmQlKsffvDKlRsF53DFBI6e3f3Zni6 /glFlFO4ro/P993o4cIYYaSCFVvmCWE8b/32AyhzGsCVGxNQItXCg7fHlICr2qubnz a1IBQjTJ2Rs6BVzSaE41vRNzux1AaEehN8rYMHw7XwTzM15emcSGiC+WaiHJkO7EQz 8mn5brRNxrFqyZnuBOc0b4wRi2vmSwwB/27euuEtvQmL3FCNHcCEJOqHmWiKYRmgek gTAuaOoNmU3wByWsbnJSYyYo3/D0uMWSy0xAEllCCp0pYt8zrO5Ou7MrTxvCe+ohWG kK7OxN//RmKuQ== Received: from unknown ([IPv6:2601:408:c301:784d:21e:4fff:fec2:a0f1]) by resomta-ch2-09v.sys.comcast.net with SMTP id b9EEdCRM3qjGub9EFdHfmz; Fri, 28 Jul 2017 17:39:11 +0000 To: Edbrowse-dev@lists.the-brannons.com From: Karl Dahlke Reply-to: Karl Dahlke References: <20170622224940.eklhad@comcast.net> <20170724175751.GC20415@odin> User-Agent: edbrowse/3.7.0x Date: Fri, 28 Jul 2017 13:39:10 -0400 Message-ID: <20170628133910.eklhad@comcast.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=nextpart-eb-949454 Content-Transfer-Encoding: 7bit X-CMAE-Envelope: MS4wfKf2ATRgu4ks7+DNzpMwMPVuF1ZR2+BYfuVRXj3rphQDgI7J/xV/WLdzWLcCTd0enu//NO+rLXJQGtk86kL5pL71pWX+ZVaIz6TcpSRyQ73//8VA6KDC r9FYl6DFZsZEmfcIpQw20EbXTEMyF7uCmHjUdnHQ9xJPvJIKUZDMKMjI Subject: [Edbrowse-dev] JS1 X-BeenThere: edbrowse-dev@lists.the-brannons.com X-Mailman-Version: 2.1.24 Precedence: list List-Id: Edbrowse Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Jul 2017 17:38:55 -0000 This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. --nextpart-eb-949454 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable > Ok, so how're we going to do all the async js stuff we'll have to = start doing > properly soon? Tbh I'm not sure how much I'm attached to the multiple = process > idea other than it means js can go pop and we don't... Right. They are orthogonal issues. We're not going to spin off a separate process for every asynchronous = thing that the browser might do, it will either be threads or some sort of time share polling, so the separate process was necessary due to the fragility of js, but I think we're fixing that step by step, and when the js side is as = solid as the edbrowse side I'd like to fold them back together into one = process, which the JS1 variable is a start. I may add some more code over the next week, still under JS1, to = simplify the code when it is one process. So many times we can just call a function instead of passing messages = around, and we wouldn't even need all those updates when curl data = changes etc, so something to work towards. As for the larger question, I don't think I know enough yet to answer. Honestly it makes me nervous to think of making all of edbrowse + = duktape threadsafe. Javascrip timers are implemented now, and well tested, e.g. = http://www.eklhad.net/async They don't spin on cpu cycles, they actually use timers, but they also = signal the main input loop so that everything is serialized. We process what you typed in, or we run the js code associated with a = timer, and we're back. There aren't any threads, and it works pretty well. I'm not saying that will work for everything we need to do, I just = don't know enough yet, but if it would work for other situations it would be easier. Cheers, Karl Dahlke --nextpart-eb-949454--