/libuv/docs/src/ |
H A D | timer.rst | 48 If the timer is already active, it is simply updated. 56 Stop the timer, and if it is repeating restart it using the repeat value 57 as the timeout. If the timer has never been started before it returns 67 For example, if a 50ms repeating timer first runs for 17ms, it will be 73 If the repeat value is set from a timer callback it does not immediately take effect. 74 If the timer was non-repeating before, it will have been stopped. If it was repeating, 83 Get the timer due value or 0 if it has expired. The time is relative to
|
H A D | poll.rst | 11 rely on the event loop to signal it about the socket status changes, like 18 readable or writable even when it isn't. The user should therefore always 19 be prepared to handle EAGAIN or equivalent when it attempts to read from or 25 The user should not close a file descriptor while it is being polled by an 27 but it might also start polling another socket. However the fd can be safely 82 to :c:func:`uv_poll_init`. On windows it takes a SOCKET handle. 96 The `UV_DISCONNECT` event is optional in the sense that it may not be 97 reported and the user is free to ignore it, but it can help optimize the 113 Though `UV_DISCONNECT` can be set, it is unsupported on AIX and as such 127 * The callback committed a write on the socket, but it remained
|
H A D | handle.rst | 63 Each buffer is used only once and the user is responsible for freeing it in the 117 Returns non-zero if the handle is active, zero if it's inactive. What 121 by closing it with uv_close(). 124 deals with i/o - is active when it is doing something that involves i/o, 127 - A uv_check_t, uv_idle_t, uv_timer_t, etc. handle is active when it has 131 function, then it's active from the moment that function is called. 146 Moreover, the memory can only be released in `close_cb` or after it has 196 If `*value` == 0, then it will set `*value` to the current send buffer size. 197 If `*value` > 0 then it will use `*value` to set the new send buffer size. 214 If `*value` > 0 then it will use `*value` to set the new receive buffer size. [all …]
|
H A D | udp.rst | 40 * UV_UDP_REUSEPORT would do. On other Unix platforms, it sets the 105 The callee is responsible for freeing the buffer, libuv does not reuse it. 190 it's required that it represents a valid datagram socket. 243 On unconnected handles, it returns `UV_ENOTCONN`. 252 :param namelen: On input it indicates the data of the `name` field. On 253 output it indicates how much of it was filled. 270 :param namelen: On input it indicates the data of the `name` field. On 271 output it indicates how much of it was filled. 378 with :c:func:`uv_udp_bind` it will be bound to 0.0.0.0 382 (``0.0.0.0`` or ``::``) it will be changed to point to ``localhost``. [all …]
|
H A D | tty.rst | 77 using :man:`ttyname_r(3)`, open it, and use it if the passed file descriptor 111 code ``UV_EBUSY`` if you call it when execution is inside 116 Gets the current Window size. On success it returns 0. 127 This function is only meaningful on Windows systems. On Unix it is silently 137 This function is not implemented on Unix, where it returns ``UV_ENOTSUP``.
|
H A D | process.rst | 7 Process handles will spawn a new process and allow the user to control it and 8 establish communication channels with it using streams. 61 * only meaningful on Windows systems. On Unix it is silently ignored. 65 * Spawn the child process in a detached state - this will make it a process 74 * only meaningful on Windows systems. On Unix it is silently ignored. 79 * option is only meaningful on Windows systems. On Unix it is silently 85 * option is only meaningful on Windows systems. On Unix it is silently 127 * `/dev/null` if it is fd 0, 1 or 2). 254 all file descriptors that were inherited. In general it does a better job on Windows than 255 it does on Unix. [all …]
|
H A D | design.rst | 44 operations, and it's meant to be tied to a single thread. One can run multiple event loops 70 requests or closing handles it's considered to be *alive*. 74 loop iteration. If the previous iteration deferred any I/O callback it will be run at this point. 82 #. Poll timeout is calculated. Before blocking for I/O the loop calculates for how long it should 100 #. Close callbacks are called. If a handle was closed by calling :c:func:`uv_close` it will 106 So if a timer became due while other timers were being processed, it won't be run until 111 it will continue from the start if it's still *alive*, otherwise it will also end.
|
H A D | async.rst | 41 Unlike other handle initialization functions, it immediately starts the handle. 58 libuv will coalesce calls to :c:func:`uv_async_send`, that is, not every call to it will 61 :c:func:`uv_async_send` is called again after the callback was called, it will be called
|
H A D | stream.rst | 52 The callee is responsible for freeing the buffer, libuv does not reuse it. 128 When the :c:type:`uv_connection_cb` callback is called it is guaranteed that 130 it more than once, it may fail. It is suggested to only call this function once 144 stream is closing. With older libuv versions, it returns `UV_EALREADY` 202 Same as :c:func:`uv_write`, but won't queue a write request if it can't be 217 where it returns ``UV_EAGAIN``. 246 is changed after write requests have already been submitted. Therefore it is
|
H A D | pipe.rst | 52 it's required that it represents a valid pipe. 119 of the buffer and it's set to the number of bytes written to the buffer on 132 of the buffer and it's set to the number of bytes written to the buffer on 151 First - call :c:func:`uv_pipe_pending_count`, if it's > 0 then initialize 159 Alters pipe permissions, allowing it to be accessed from processes run by
|
H A D | migration_010_100.rst | 16 allocated memory for a new loop and initialized it; and destroyed with `uv_loop_delete`, 116 ``struct sockaddr_in6``. Now functions take a ``struct sockaddr*`` (note it's a pointer). 191 data on a pipe, which could also result in the reception of handles over it. The callback 224 While it wasn't supported by the API, users often accessed the libuv internals in 238 libuv 0.10. In 1.0, this function got renamed to :c:func:`uv_fs_scandir`, since it's
|
H A D | loop.rst | 73 handle UV_ENOSYS; it means the loop option is not supported by the platform. 100 or it will return UV_EBUSY. After this function returns, the user can free 112 with it are freed. 165 an error to add the fd but it never generates events. 212 continue to use it in the parent). This function must be called 218 When possible, it is preferred to create a new loop in the child 223 This function is not implemented on Windows, where it returns ``UV_ENOSYS``.
|
H A D | misc.rst | 266 On success, it returns 0, if any of the function pointers is `NULL` it 281 do so automatically when it is unloaded but it can be instructed to perform 317 has not been called on systems that require it, then `UV_ENOBUFS` is 381 it has been pinned to specific CPUs. 426 Returns [0,0,0] on Windows (i.e., it's not implemented). 650 on cgroups if it is present. 671 to time adjustments; it can jump back in time. 811 for others it will be silently reduced to `PRIORITY_HIGH`. 821 have the \*JOBCTL special authority (even to lower it). 895 otherwise it must be specified. [all …]
|
H A D | guide.rst | 8 and it hasn't gone through thorough review yet. If you spot a mistake please file an
|
/libuv/ |
H A D | MAINTAINERS.md | 44 Store it as a blob on the repo: 48 The previous command returns a hash, copy it. For the sake of this explanation, 49 we'll assume it's 'abcd1234'. Storing the blob in git is not enough, it could 50 be garbage collected since nothing references it, so we'll create a tag for it:
|
H A D | SUPPORTED_PLATFORMS.md | 33 an issue about it for discussion. 46 file inside ``src/unix/`` unless it's already done in a common file, in which 50 supported, but if one of the two does not support the new platform it can be 59 new API is to be used, it must be done optionally, only in supported versions.
|
H A D | README.md | 6 was primarily developed for use by [Node.js][], but it's also 62 framework, which makes it possible to build the documentation in multiple 77 Build documentation as HTML and live reload it when it changes (this requires 113 date. Please verify it before opening new issues. 237 You can install pre-built binaries for libuv or build it from source using [Conan](https://conan.io… 319 MSVC does not have an equivalent flag but it also does not appear to need it
|
H A D | CONTRIBUTING.md | 46 Please adhere to libuv's code style. In general it follows the conventions from 84 comment that explains it. 117 nicely even when it is indented. 120 The header line should be meaningful; it is what other people see when they 142 If you add a new test file, it needs to be registered in three places:
|
/libuv/docs/src/guide/ |
H A D | introduction.rst | 14 I hope you will enjoy it as it grows. 39 the style of programming; due to the way it had been shaped by browsers. As 40 node.js grew in popularity, it was important to make it work on Windows, but 57 Clone or Download libuv_, then build it::
|
H A D | threads.rst | 12 the result when it is done. 18 A notable aspect of libuv's thread facilities is that it is a self contained 36 wait for it to close using ``uv_thread_join()``. 50 implementation detail, avoid depending on it to always be true. 102 locked a mutex attempts to lock it again. For example, a construct like:: 208 calculate fibonacci numbers, sleeping a bit along the way, but run it in 220 arbitrary data through it using the ``void* data`` field and use it to 244 executing, or it has finished executing*, ``uv_cancel()`` **will fail**. 311 with the async watcher whenever it receives a message. 346 Finally it is important to remember to clean up the watcher. [all …]
|
H A D | utilities.rst | 40 a timer callback, it means: 53 and then starting it with both initial ``timeout`` and ``repeat`` set to the 54 old ``repeat`` value. If the timer hasn't been started it fails (error code 95 We initialize the garbage collector timer, then immediately ``unref`` it. 120 Here we initialize the idle watcher and queue it up along with the actual 139 ``uv_work_t.data`` to point to it. A slight variation is to have the 169 Now the task function can extract the data it needs: 265 we create a ``uv_poll_t`` handle if it doesn't exist, and associate it with the 345 Linux it is ``libhello.so``. 349 ``uv_dlsym`` and invoke it. [all …]
|
H A D | processes.rst | 8 A common idiom in Unix is for every process to do one thing and do it well. In 25 The simplest case is when you simply want to launch a process and know when it 37 ``options`` is implicitly initialized with zeros since it is a global 39 initialize it to null out all unused fields:: 107 does not affect it. 141 a handle and associate it with a loop. To listen for particular signals on 274 Domain Socket`_, or derived from `mkfifo(1)`_, or it could actually be a 276 `UV_CREATE_PIPE` flag, it opts for creating a `socketpair(2)`_. 296 which clients can interact with it. 339 to read the full code to really understand it. [all …]
|
H A D | networking.rst | 30 2. ``uv_tcp_bind`` it. 77 Where you do bind/listen/accept on the server, on the client side it's simply 108 You will have to run `udp-dhcp` as **root** since it uses well known port 126 client) and start a read on it. This will read back responses from any DHCP 141 it indicates there is nothing to read (the callback shouldn't do anything), if 142 not NULL, it indicates that an empty datagram was received from the host at 185 ``uv_udp_set_multicast_loop`` to switch it off. 193 libuv provides asynchronous DNS resolution. For this it provides its own 232 useful to allow your service to bind to IP addresses when it starts.
|
/libuv/src/ |
H A D | fs-poll.c | 239 struct poll_ctx* it; in timer_close_cb() local 250 for (last = handle->poll_ctx, it = last->previous; in timer_close_cb() 251 it != ctx; in timer_close_cb() 252 last = it, it = it->previous) { in timer_close_cb()
|
/libuv/m4/ |
H A D | ax_pthread.m4 | 41 # is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it 59 # This program is free software: you can redistribute it and/or modify it 64 # This program is distributed in the hope that it will be useful, but 143 # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it 252 # Clang takes -pthread; it has never supported any other flag 256 # to be the way of modern systems, but it's conceivable.) 279 # support, and in fact it is often not straightforward to specify a 286 # this misfeature, we search for an option to squash it. 363 # We check for pthread_join because it is in -lpthread on IRIX 366 # pthread_cleanup_push because it is one of the few pthread
|