Beispiel #1
0
        /// <summary>
        ///     Constructor
        /// </summary>
        /// <exception cref="System.InvalidOperationException">
        ///     This is thrown
        ///     if <see cref="Curl" /> hasn't bee properly initialized.
        /// </exception>
        /// <exception cref="System.NullReferenceException">
        ///     This is thrown if the native <c>CurlMulti</c> handle wasn't
        ///     created successfully.
        /// </exception>
        public CurlMulti()
        {
            Curl.EnsureCurl();
            _pMulti = NativeMethods.curl_multi_init();
            ensureHandle();
            _maxFd = 0;
#if USE_LIBCURLSHIM
            _fdSets = IntPtr.Zero;
            _fdSets = NativeMethods.curl_shim_alloc_fd_sets();
#else
            _fd_read   = NativeMethods.fd_set.Create();
            _fd_read   = NativeMethods.fd_set.Create();
            _fd_write  = NativeMethods.fd_set.Create();
            _fd_except = NativeMethods.fd_set.Create();
#endif
            _multiInfo     = null;
            _bGotMultiInfo = false;
            _htEasy        = new Hashtable();
        }
Beispiel #2
0
        /// <summary>
        ///     Constructor
        /// </summary>
        /// <exception cref="System.InvalidOperationException">
        ///     This is thrown
        ///     if <see cref="Curl" /> hasn't bee properly initialized.
        /// </exception>
        /// <exception cref="System.NullReferenceException">
        ///     This is thrown if the native <c>CurlMulti</c> handle wasn't
        ///     created successfully.
        /// </exception>
        public CurlMulti()
        {
            Curl.EnsureCurl();
            _pMulti = NativeMethods.curl_multi_init();
            ensureHandle();
            _maxFd = 0;
#if USE_LIBCURLSHIM
            _fdSets = IntPtr.Zero;
            _fdSets = NativeMethods.curl_shim_alloc_fd_sets();
#else
            _fd_read = NativeMethods.fd_set.Create();
            _fd_read = NativeMethods.fd_set.Create();
            _fd_write = NativeMethods.fd_set.Create();
            _fd_except = NativeMethods.fd_set.Create();
#endif
            _multiInfo = null;
            _bGotMultiInfo = false;
            _htEasy = new Hashtable();
        }