<div dir="ltr">Just delete it</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Nov 9, 2020 at 9:00 PM Vino via Digitalmars-d-learn <<a href="mailto:digitalmars-d-learn@puremagic.com">digitalmars-d-learn@puremagic.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi All,<br>
<br>
   Request your help to on how to improve the performance of the <br>
below code.<br>
<br>
import std.conv: to;<br>
import std.net.curl : get, HTTP, CurlOption;<br>
import std.parallelism: parallel;<br>
import std.range: chain, only;<br>
import std.typecons: Tuple, tuple;<br>
<br>
void main ()<br>
{<br>
  Array!(Tuple!(int,string)) apidata;<br>
  Row[] result;<br>
  string apihost = "<a href="http://abc.com" rel="noreferrer" target="_blank">abc.com</a>"; int apiport = 1830; string apiuri = <br>
/getdata;<br>
  string apiuser = "user"; string apipass = "pass";<br>
  foreach(i, k; parallel(result,1))<br>
     {<br>
       string url = chain(apihost, only(':'), to!string(apiport), <br>
apiuri).to!string;<br>
       string usrpass = chain(apiuser, only(':'), <br>
apipass).to!string;<br>
       auto https = HTTP();<br>
       https.handle.set(CurlOption.buffersize, 512000);<br>
       https.handle.set(CurlOption.userpwd, usrpass);<br>
       https.handle.set(CurlOption.connecttimeout, 600);<br>
       https.handle.set(CurlOption.tcp_nodelay, 1);<br>
       https.handle.set(CurlOption.http_version, 2);<br>
       https.handle.set(CurlOption.sslversion,  1;<br>
       https.handle.set(CurlOption.use_ssl,  3);<br>
       https.handle.set(CurlOption.ssl_verifypeer, 0);<br>
       https.handle.set(CurlOption.url, url);<br>
       https.method(HTTP.Method.get);<br>
       https.StatusLine st;<br>
       https.onReceiveStatusLine = (https.StatusLine st) { if <br>
(st.code != 200) { throw new Exception(st.reason); } };<br>
       ubyte[] content;<br>
       https.onReceive = (ubyte[] data) { content ~= data; return <br>
data.length; };<br>
       https.perform();<br>
       scope(failure) { https.shutdown; exit(-4); } scope(exit) <br>
https.shutdown;<br>
       apidata.insert(tuple(seq, cast(string) content));<br>
  }<br>
  return apidata[].sort;<br>
}<br>
<br>
From,<br>
Vino.B<br>
</blockquote></div>