标签: libevent

为什么我不应该使用异步(事件)IO

我现在正在写一些事件代码(使用gevent在python中),我使用nginx作为Web服务器,我觉得两者都很棒.有人告诉我,事件有一个权衡,但无法看到它.有人可以解释一下吗?

詹姆士

python asynchronous libevent gevent

9
推荐指数
2
解决办法
1690
查看次数

libevent,windows和.NET编程

我尝试了很多开源软件,我注意到开源世界中有相当数量的服务器类型应用程序使用libevent来促进基于事件的处理,而不是产生多个线程来处理请求.

我也做了很多.NET编程(这是我的核心工作函数),我有兴趣了解libevent与.NET事件模型的关系..NET中的事件是否相当于C程序的libevent?我是否应该尝试学习libevent并尝试在自定义.NET服务器应用程序中使用它,或者使用标准的.NET事件模型基本相同?

.net libevent

8
推荐指数
1
解决办法
3187
查看次数

如何使用Visual Studio 2008构建libevent版本2.0.10

有没有人有关于使用Visual Studio 2008构建libevent-2.0.10的明确说明?

c c++ build libevent visual-studio-2008

8
推荐指数
1
解决办法
8959
查看次数

如何在C中一起使用libevent和pthread

main函数基于libevent,但函数中有一个长期运行的任务.所以开始N踏步来完成任务.这个想法好吗?如何在C中一起使用libevent和pthread?

c libevent

8
推荐指数
1
解决办法
7874
查看次数

libevent和epoll,哪个更有效率?

我认为这些是最好的两个事件处理库.

这两个都有很多用户,但哪个更好?

epoll libevent

7
推荐指数
2
解决办法
6306
查看次数

libevent和non-blocking socket

据我所知,为了使用libevent监视套接字, event_set()首先应该使用正确的参数调用.

libevent文档声明eventevent_set()的参数可以是EV_READ或EV_WRITE.并且此事件参数是要注意的事件.

但是EV_READ和EV_WRITE对应的套接字事件是什么?我的意思是我如何监视连接状态的变化,而不是监视传入的消息?

c sockets libevent

7
推荐指数
1
解决办法
5500
查看次数

在Windows上的Libev

考虑libeventlibev.该libev库是否在Windows上具有IOCP的本机支持?

c++ windows libevent libev

7
推荐指数
2
解决办法
9763
查看次数

与libevent的多进程php

我能够用libevent制作一个简单的php websocket服务器,但是当我试图让它进行多处理时我就陷入了困境.

例如,这是单个处理

<?php
$socket = stream_socket_server ('tcp://0.0.0.0:2000', $errno, $errstr);
stream_set_blocking($socket, 0);
$base = event_base_new();
$event = event_new();
event_set($event, $socket, EV_READ | EV_PERSIST, 'ev_accept', $base);
event_base_set($event, $base);
event_add($event);
event_base_loop($base);

$GLOBALS['connections'] = array();
$GLOBALS['buffers'] = array();

function ev_accept($socket, $flag, $base) {
    static $id = 0;

    $connection = stream_socket_accept($socket);
    stream_set_blocking($connection, 0);

    $id += 1;

    $buffer = event_buffer_new($connection, 'ev_read', NULL, 'ev_error', $id);
    event_buffer_base_set($buffer, $base);
    event_buffer_timeout_set($buffer, 30, 30);
    event_buffer_watermark_set($buffer, EV_READ, 0, 0xffffff);
    event_buffer_priority_set($buffer, 10);
    event_buffer_enable($buffer, EV_READ | EV_PERSIST);

    // we need to save both …
Run Code Online (Sandbox Code Playgroud)

php fork multiprocessing libevent

6
推荐指数
1
解决办法
5003
查看次数

无法将LIBEVENT链接为C++

为什么这不起作用,文件test.c:

#include <event.h>
int main(void)
{
    event_init();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

然后: gcc -o test.o -c test.c运行正常,但是

链接: g++ -o test -levent test.o生产

test.o: In function `main':
test.c:(.text+0x5): undefined reference to `event_init'
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

所以它无法链接为C++.怎么解决这个?我需要链接它C++并编译为C.

c c++ gcc g++ libevent

6
推荐指数
1
解决办法
3843
查看次数

加载共享库时出错:libevent-1.4.so.2:无法打开共享对象文件:

我正在使用libevent进行程序,我在两台计算机A和B上编译我的程序,在A上执行成功,但在BI上遇到以下错误:

error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

供参考:

A和B都带有fedora系统,在A和B上,我都下载了libevent-1.4.14b-stable.tar.gz,并通过configure/make/make install安装它.

在A上

    [esolve@kitty temp]$ uname -r
    3.6.10-2.fc16.x86_64
    [esolve@kitty temp]$ ls -al /usr/local/lib64 | grep libevent
    [esolve@kitty temp]$ ls -al /usr/lib64 | grep libevent
    [esolve@kitty temp]$ ls -al /usr/lib | grep libevent
    lrwxrwxrwx   1 root root       32 May 21 00:25 libevent-1.4.so.2 -> /usr/local/lib/libevent-1.4.so.2
    [esolve@kitty temp]$ ls -al /usr/local/lib | grep libevent
    lrwxrwxrwx   1 root root     21 May 21 00:22 libevent-1.4.so.2 …
Run Code Online (Sandbox Code Playgroud)

linux compiler-errors shared-libraries libevent

6
推荐指数
1
解决办法
8453
查看次数