草庐IT

trace-listener

全部标签

ios - iOS 有 'Notification Listener' 吗?

是否可以在iOS中创建通知监听器?类似NotificationListenerService的东西在Android中。编辑:我想做的是收听来自设备内任何应用的任何通知(未接来电、电子邮件、短信...) 最佳答案 对此有两个可能的答案。NSNotificationCenter用于在应用本身内发布通知。举例来说,您希望几个类都接收到发生某事(或某事)的信息,那么您将使用它。https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Cl

python-2.7 - python中socket模块的 `listen(1)`方法中参数1是什么意思?

socket的listen(1)方法中参数1是什么意思?我在python2.7中使用套接字模块,我创建了一个基本服务器,我想连接到多个客户端(都在本地机器上)并在它们之间传输数据。我知道有一种更简单的方法可以做到这一点,但我想练习客户端何时不在同一台机器上并且可能需要先从服务器检索某些内容以便无法绕过它。我想知道listen中的1是否指的是服务器一次建立的连接数量,如果不是,它的意思是什么。我真的很想详细了解流程的各个部分是如何工作的,因此我们将不胜感激。 最佳答案 它定义了积压队列的长度,即已由TCP/IP堆栈完成但尚未被应用程序

c++ - WIN32 select() 报告 listen() 套接字异常; WSAGetLastError() = 0?

标题也许说明了一切?Windows10、VisualStudioCommunity2017。C++服务器监听一个端口,并将生成的FD放入一个fd_set中用于输入,一个用于异常。select()被调用。它返回,并且一个连接被accept()ed。它的FD也被添加到这两个fd_sets。连接正常,然后结束。然后从两个fd_sets中删除它的FD。在下次调用select()时,我被告知监听套接字出现异常,但WSAGetLastError()为零。根据我的笔记,监听FD设置了O_NONBLOCK,因为:Theremaynotalwaysbeaconnectionwaitingaftersel

tcp - 如何通过TCP sender和listener连接两个mirth系统

我是mirthconnect的新手,想知道如何连接两台mirth机器。我正在从我机器上的源数据库中获取数据(HL7消息),并且必须将该数据(HL7消息)发送到不同用户的另一台欢乐机器。请告诉我欢乐目的地和另一个欢乐源中所需的设置。我正在使用windows732位。和欢乐v3.3.2.7911。此外,我在目标连接器中没有LLP发件人。 最佳答案 Mirth支持多种连接选项。如果您的计算机在同一网络(或VPN)上,请尝试使用TCP监听器/发送器连接器类型和MLLP。在接收方,创建一个新channel并在“来源”选项卡上设置以下设置:连接

c++ - Winsock TCP 监听器在 closesocket() 调用成功后保持在 LISTENING 状态

我正在处理一个现有的DLL,其中创建了一个TCP监听套接字,并设置为在出现故障时使用SO_REUSEADDR立即重新绑定(bind)到同一个套接字。然而,目前存在一个问题,即使在成功调用closesocket()之后,监听器仍将保持在LISTENING状态;由于它没有进入TIME_WAIT,因此在重新创建套接字时会在同一端口上创建一个新的监听器。然后客户端无法连接到新的监听器(大概)。SO_LINGER设置为0秒。套接字关闭时没有挂起的传输。最旧的套接字似乎在大约十秒后关闭,而没有明显进入另一种状态。在成功调用closesocket()后,什么可以使监听器保持在LISTENING状态?

tcp - 异步套接字 : always listen to incoming TCP messages

我想要一个通过TCP连接到服务器然后持续监听传入数据的服务。我正在使用CocoaAsyncSocket我正在以下列方式使用它:self.socket=[[GCDAsyncSocketalloc]initWithDelegate:selfdelegateQueue:dispatch_get_main_queue()];NSError*err=nil;if(![self.socketconnectToHost:@"..."onPort:...error:&err]){return;}[self.socketreadDataWithTimeout:-1tag:1];然后在读取委托(deleg

tcp - TCP和Unix listen函数中Three way handshake的疑问

Connect函数在发送最后一个ACK​​(发起TCP连接的3次握手的第3段)后返回。如果因为listen仍在服务器端等待ACK但客户端没有人再次发送该ACK而丢失了第3段,会发生什么情况? 最佳答案 如果客户端发送它的ACK数据包,并且它丢失了,客户端会注意到数据没有被服务器确认并重新发送数据包。如果客户端在单独的数据包中发送它的ACK,并且它丢失了,服务器将注意到SYN/ACK没有被客户端确认并重新发送数据包。客户端将通过重新发送ACK进行响应。此时应用程序的连接调用是否仍在阻塞并不重要,因为确认是由操作系统的TCP/IP实现完

c - listen() 积压上限

尽管关于这个话题说了很多,但我还是很困惑。我试验了一个能够处理适当负载斜坡的巨型Linux服务器,大概每秒有数千个连接。现在,如果我检查默认的listen()队列:#cat/proc/sys/net/core/somaxconn128这根本不是实际的队列大小。我怀疑这可能是遗留问题,实际大小如下所示:#cat/proc/sys/net/ipv4/tcp_max_syn_backlog2048但是,mantcp说后者是等待来自客户端的ACK的连接,这与尚未被接受的连接总数不同,后者是listen()积压。所以我的问题是如何增加listen()backlog,以及如何获取/设置它的上限(就

language-agnostic - 更多 TCP 和 POSIX 套接字 listen() 和 accept() 语义

情况:服务器调用listen()(但不是accept()!)。客户端向服务器发送SYN。服务器获取SYN,然后将SYN/ACK发送回客户端。但是,客户端现在挂断/死亡,因此它永远不会向服务器发回ACK。连接处于SYN_SENT状态。现在另一个客户端发送一个SYN,从服务器得到一个SYN/ACK,然后发回一个ACK​​。此连接现在处于ESTABLISHED状态。现在服务器终于调用了accept()。怎么了?accept()是否在第一个错误连接上阻塞,直到发生某种超时?它是否首先检查队列中是否存在任何已建立的连接并返回这些连接? 最佳答案

c - 套接字编程 - listen() 和 accept() 有什么区别?

我一直在阅读thistutorial了解套接字编程。似乎listen()和accept()系统调用都做同样的事情,即阻塞并等待客户端连接到使用创建的套接字socket()系统调用。为什么为此需要两个单独的步骤?为什么不只使用一个系统调用?顺便说一句,我搜索了这个问题并找到了类似的问题,但没有一个答案令人满意。例如,其中一个说accept()创建套接字,这是没有意义的,因为我知道套接字是由socket()创建的。 最佳答案 listen()函数基本上在内部套接字结构中设置一个标志,将套接字标记为被动监听套接字,您可以在该套接字上调用a