From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from resqmta-ch2-10v.sys.comcast.net (resqmta-ch2-10v.sys.comcast.net [IPv6:2001:558:fe21:29:69:252:207:42]) by hurricane.the-brannons.com (Postfix) with ESMTPS id 5BF88779C1 for ; Tue, 27 Aug 2019 00:19:58 -0700 (PDT) Received: from resomta-ch2-07v.sys.comcast.net ([69.252.207.103]) by resqmta-ch2-10v.sys.comcast.net with ESMTP id 2VkOiyN6i1mS82Vlhi0ACk; Tue, 27 Aug 2019 07:19:53 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=20190202a; t=1566890393; bh=tmb++ILoHptu5T6pCMpVyZnYUOu7eG5yjYKTHebWYJw=; h=Received:Received:To:From:Reply-to:Subject:Date:Message-ID: Mime-Version:Content-Type; b=jjtDKep/mZbTEWZS/KOqyp1I7VUTNwuhffb8f56QC82UssSAT8Mp+K29MEaaDOCFu zL8y+sRyhcPe32WOrPk5m2e57J/NQqFTt+vt0pSVYU0gNF7T3KO7IO/CROW+ONd1S7 Gk5EfuHNeyTMWunadlWuQP5W42OIrtcvgu66KPv5P5W5M5cedgfpTXt3J3Cg7SIhEH aLVShWk8FdZgxywTa/a6fsb7hu0qlx/JPK5ZzXxzH7yUTCziRzRhTdDh+i29WuJJVl Tm/yAuLqm2LFl3FavVO4clE8hPKFTuh/xrhAFnPJyb3v2ZsvSJDUS7B/cJCW6T4xrN saOTrK72MIOrw== Received: from unknown ([IPv6:2601:408:c303:3f49:21e:4fff:fec2:a0f1]) by resomta-ch2-07v.sys.comcast.net with ESMTPSA id 2Vlfil38vaF9j2VlgiMNTH; Tue, 27 Aug 2019 07:19:53 +0000 X-Xfinity-VMeta: sc=0;st=legit To:edbrowse-dev@edbrowse.org From: Karl Dahlke Reply-to: Karl Dahlke User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E) Subject: [edbrowse-dev] Threads Date: Tue, 27 Aug 2019 03:19:51 -0400 Message-ID: <20190727031951.eklhad@comcast.net> X-BeenThere: edbrowse-dev@edbrowse.org List-Id: Edbrowse Development List Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=nextpart-eb-669513 Content-Transfer-Encoding: 7bit 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-669513 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Folks, it has happened; i'm using threads for asynchronous downloads = instead of processes. The word fork is not to be found in the edbrowse source! There are two places this occurs. 1. Download files in background. This is not the default. Use the bg command to turn this on. Usually when a file is large and you just want to let it run in the = background. Type bglist for a list of the background jobs. Careful, it's not a separate process, so if you quit edbrowse before = the download is complete, it just stops and doesn't finish. 2. Download all the javascript files in the background and in parallel. These can be large files so I'm hoping this speeds things up. This is on by default because you usually want it, besides, I really need folks to test it under various conditions and find any weird race conditions or thread unsafe code or seg falts = etc. It works with curl+gnutls, which the process implementation never did. Both of these have lots of corner cases, especially #1. Download ftp files, gopher files, https files, several at onces, some = large, does it all work? Do they interact with each other? Does the bglist command work? Does it show the sizes of the downloads in progress? Does a foreground download still give you the dots? Are javascript files pulled from cache or put into cache, even when = they download in background? (This is important.) Then there is a whole host of followup work, like putting off the async = scripts til the end, and maybe starting the js fetches even earlier at parse time, and maybe fetching css files in background (which isn't done yet), and on and on. But first let's make sure I didn't break all sorts of things with this = commit. Set db3 and you'll see all the fetches and http codes etc in a jumbled = order as the files are loaded. Type jsbg to go back to a sserial order. I've never touched posix threads before so give me a pat on the back = for diving into something new. Karl Dahlke --nextpart-eb-669513--