Function std.net.curl.byChunkAsync
HTTP/FTP fetch content as a range of chunks asynchronously.
						
				auto byChunkAsync(Conn, PostUnit)(
				
  const(char)[] url,
				
  const(PostUnit)[] postData,
				
				  size_t chunkSize = 1024,
				
				  size_t transmitBuffers = 10,
				
				  Conn conn = Conn()
				
				)
				
				if (isCurlConn!Conn);
				
				
				auto byChunkAsync(Conn)(
				
  const(char)[] url,
				
				  size_t chunkSize = 1024,
				
				  size_t transmitBuffers = 10,
				
				  Conn conn = Conn()
				
				)
				
				if (isCurlConn!Conn);
						
					
				A range of chunks is returned immediately and the request that fetches the
 chunks is performed in another thread. If the method or other request
 properties is to be customized then set the conn parameter with a
 HTTP/FTP instance that has these properties set.
 If postData is non-null the method will be set to post for HTTP
 requests.
The background thread will buffer up to transmitBuffers number of chunks before is stops receiving data from network. When the main thread reads the chunks from the range it frees up buffers and allows for the background thread to receive more data from the network.
 If no data is available and the main thread access the range it will block
 until data becomes available. An exception to this is the wait(Duration)
 method on the ChunkInputRange. This method will wait at maximum for the specified
 duration and return true if data is available.
Example
import stdimport stdParameters
| Name | Description | 
|---|---|
| url | The url to receive content from | 
| postData | Data to HTTP Post | 
| chunkSize | The size of the chunks | 
| transmitBuffers | The number of chunks buffered asynchronously | 
| conn | The connection to use e.g. HTTP or FTP. | 
Returns
A range of ubyte[chunkSize] with the content of the resource pointer to by the URL.
Authors
Jonas Drewsen. Some of the SMTP code contributed by Jimmy Cao.