<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">On 30 Sep 2017, at 11:38, <a href="mailto:734819342@qq.com">734819342@qq.com</a> wrote:<br><div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="line-height: 1.5; font-size: 10.5pt; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><div><font face="Consolas"><span></span>Hello:</font></div><div><font face="Consolas"> </font></div><div><font face="Consolas"> Why there are many work queues in event engine? And what for respectively?</font></div><div><font face="Consolas"><br></font></div><div><font face="Consolas"><br></font></div><div><div><font face="Consolas"> nxt_work_queue_cache_t work_queue_cache;</font></div><div><font face="Consolas"> nxt_work_queue_t *current_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t fast_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t accept_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t read_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t socket_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t connect_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t write_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t shutdown_work_queue;</font></div><div><font face="Consolas"> nxt_work_queue_t close_work_queue;</font></div><div><font face="Consolas"><br></font></div><div><font face="Consolas"> nxt_locked_work_queue_t locked_work_queue;</font></div></div></div></blockquote></div><div apple-content-edited="true"><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br>Syscall related operations are batched in queues.</div><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">It is unfinished now but will be completed soon.<br><br><br>-- <br>Igor Sysoev<br><a href="http://nginx.com">http://nginx.com</a></div></div></div>
</div>
<br></body></html>