MultiCURLHandle-class function

Class "MultiCURLHandle" for asynchronous, concurrent HTTP requests

Class "MultiCURLHandle" for asynchronous, concurrent HTTP requests

This is a class that represents a handle to an internal C-level data structure provided by libcurl to perform multiple HTTP requests in a single operation and process the responses in an inter-leaved fashion, i.e. a chunk from one, followed by a chunk from another.

Objects of this class contain not only a reference to the internal C-level data structure, but also have a list of the CURLHandle-class objects that represent the individual HTTP requests that make up the collection of concurrent requests. These are maintained for garbage collection reasons.

Essentially, the data in objects of this class are for internal use; this is an opaque class in R. class

Objects from the Class

The constructor function getCurlMultiHandle

is the only way to create meaningful instances of this class.

Slots

  • ref:: Object of class "externalptr". This is a reference to the instance of the libcurl data structure CURLM pointer.

  • subhandles:: Object of class "list". This is a list of CURLHandle-class

     instances that have been `push()`ed onto the multi-handle stack.
    

Methods

  • pop: signature(obj = "MultiCURLHandle", val = "CURLHandle"): ...
  • pop: signature(obj = "MultiCURLHandle", val = "character"): ...
  • push: signature(obj = "MultiCURLHandle", val = "CURLHandle"): ...

References

Curl homepage https://curl.se/

https://www.omegahat.net/RCurl/

Author(s)

Duncan Temple Lang

See Also

getCurlMultiHandle

curlMultiPerform

multiTextGatherer

  • Maintainer: CRAN Team
  • License: BSD_3_clause + file LICENSE
  • Last published: 2025-03-22

Useful links