小编cod*_*ons的帖子

epoll 检测用户断开连接的最佳方法

我正在使用 epoll 进行网络编程。我想知道检测用户断开连接的最佳方法。现在,我使用带超时的 select 来查看接收缓冲区中是否有信号,并且在一定时间内没有信号,然后关闭套接字连接。

我认为可能还有其他更适合epoll而不是使用select的东西。

提前致谢..

epoll

4
推荐指数
1
解决办法
3930
查看次数

目标C,如何使活动视图出现在顶部通知菜单上

如果您打开iPhone电子邮件应用程序,Wifi图标旁边的通知菜单顶部会显示一个活动视图.我怎样才能做到这一点?

cocoa-touch objective-c

3
推荐指数
1
解决办法
795
查看次数

为什么我需要在C++中使用类名前面的"c"

可能重复:
以C开头的类名.

我是一个使用c ++的新手,人们将c ++类命名为"c"+.那是什么意思?我认为这是一种语法,但不知道它意味着什么..

c++

3
推荐指数
2
解决办法
252
查看次数

什么是长型?

可能重复:
"long int","long long"数据类型

我是C++的新手,我看了一个示例代码,我看到了很长的类型.它说的是这样的

long long deviceId;
Run Code Online (Sandbox Code Playgroud)

这和长型一样吗?我正在尝试将设备ID从java(Android)发送到我的服务器.在java中,设备ID是长类型(8byte),我将它放入缓冲区就像

bytebuffer.putLong(Long.valueOf(deviceId));
Run Code Online (Sandbox Code Playgroud)

我试图使用c ++在我的Linux服务器上解析它.

提前致谢.

c++

3
推荐指数
1
解决办法
7080
查看次数

如何在c ++中设置调试模式

我想设置一个调试模式,以便只有在打开调试模式时才打印日志语句.例如,如果我有这样的代码

printf("something \n");
.
.
.
perror("something \n");
Run Code Online (Sandbox Code Playgroud)

它只有在调试标志打开时才有效.我不想使用"if"语句.我认为有一种聪明的方法可以使用#define或其他东西来做到这一点.

谢谢提前..

c++

3
推荐指数
2
解决办法
5997
查看次数

如何检查客户端连接是否仍然存在

我正在使用epoll进行网络编程.我有一个连接列表,并将每个客户端放在列表中.如果用户正常断开,我可以通过读取0来检测用户断开连接.但是,如果用户以某种方式意外断开连接,那么在尝试向用户发送数据之前,它无法知道这一点.

我不认为epoll提供了一个处理这个问题的好方法.所以我想我应该自己处理这个问题.如果您能为我提供与此问题相关的示例或参考资料,我将非常感激.

networking epoll tcp

3
推荐指数
1
解决办法
2847
查看次数

如何实现epoll超时?

我正在使用epoll进行网络编程.好像工作正常.我想添加一个超时功能,所以如果客户端长时间没有发送任何东西,那么它只会断开客户端.

我该怎么做呢?我知道我可以在epoll_wait中设置超时但这不适用于单个套接字......

提前致谢...

linux networking epoll

3
推荐指数
1
解决办法
3736
查看次数

c ++ vector如何工作

让我们说如果我有一个向量V,它有10个元素.如果我擦除第一个元素(在索引0处)v.erase(v.begin())然后使用STL向量如何处理它?

它是否会创建另一个新的向量并将元素从旧向量复制到新向量并释放旧向量?或者它是否从索引1开始复制每个元素并将元素复制到index-1?

如果我需要一次使用大小为100,000的向量,之后我不会使用那么多空间,我可以说我只需要一个大小为10的向量然后它会自动减小大小吗?(我不这么认为)

我在网上看了,只有API和教程如何使用STL库.是否有任何好的参考资料,我可以了解STL库的实现或复杂性?

c++ stl

3
推荐指数
1
解决办法
1864
查看次数

如何将SVN从trunk更改为范围内的分支

假设我检查了trunk,我是本地机器中trunk目录的根目录,我想将对trunk(范围62-65)所做的更改合并到一个分支.我检查了主干并做了svn up并运行这个合并cmd.

svn merge -r 62-65 svn+ssh://url/to/branch
Run Code Online (Sandbox Code Playgroud)

它运行正常,但结果是错误的.我运行svn diff看到那些更改,并发现一个日志说我指定的范围应用于分支.

Merged /trunk/MyApp:r12-15
Merged /branch:r62-65
Run Code Online (Sandbox Code Playgroud)

我试图做的是从62-65范围内的本地机器中的主干中取出那些更改,并将这些更改应用到我指定的分支.

我该怎么做呢?

svn merge

3
推荐指数
2
解决办法
9404
查看次数

Node JS,静态函数/变量最佳实践

我有 Java 背景,我正在尝试构建 Node JS 库。我有一个像这样的Java类;

public class MyClass {
    static List<String> myList = initMyList();
    private String something;

    public MyClass(String something) {
        validate(something);
        this.something = something;    
    }

    public static String doSomething(String something) {
        return doSomethingWithMyList(something);
    }

    public String doSomething() {
        return doSomething(something);
    }

    private static String doSomethingWithMyList (String something) {
        // do something with list ..
        return something
    }
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,它有一个静态帮助器方法,static String doSomething采用 String 参数,非静态函数String doSomething使用实例变量something

因此用户可以执行MyClass.doSomething(string)MyClass m = new MyClass(sting); …

java static class node.js

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×4

epoll ×3

networking ×2

class ×1

cocoa-touch ×1

java ×1

linux ×1

merge ×1

node.js ×1

objective-c ×1

static ×1

stl ×1

svn ×1

tcp ×1