کتابخانه ای بنام libuv به زبان c نوشته شده که ویژگیهای خاصی برای علاقمندان به کارهای سیستمی دارد. کتابخانه libuv ویژگیهای ذیل دارد:
این کتابخانه با ویژگی عالی cross-platform بودن و عدم مسدود کردن در حین انجام کارهای I/O و مستقل از سسیتم عامل باعث شده فضای مناسبی برای تسریع در کارها ایجاد کرده و یک زیر ساخت مناسبی برای کد نویسی سیستمی شده است.
هسته کاری libuv بر اساس event-loop و call back که روی I/O مطرح می شود. مسولیت جمع آوری event ها از سیستم عامل و یا نظارت بر دیگر event ها توسط libuv انجام می شود. کاربر call back ها را ثبت می کند تا زمانی که event اتفاق بیافتد.
می دانیم برای اینکه یک کار I/O انجام شود پردازنده یک زمانی بیکار خواهد بود و اتلاف زمانی تا اجرای کامل دستور العمل خواهیم داشت. راهکار threading برای کاهش زمان بیکاری پردازنده استفاده می شود. event-loopروش دیگری که توسط libuv مطرح شده که باعث اجرای آسنکرون غیر بلوکه کننده می شود.
کدنویسی با کمک libuv رعایت اصولی را می طلبد که باید دقت شود.
#include
main()
{
uv_loop_t *loop= malloc(size of(uv_loop_t));
uv_loop_init(loop);
..
uv_run(loop,UV_RUN_DEFAULT);
uv_loop_close(loop);
(free(loop
{
https://github.com/mousaviasil/libuv_how-to-work/blob/master/README.md
گناهان...ما را در سایت گناهان دنبال میکنید
برچسب: نویسنده: بازدید: 96