我可以从node.js设置ulimit吗?(Can I set ulimit from node.js?)
我想限制子进程写太多的数据或占用太多CPU时间(无限循环)。 在C中,我会调用setrlimit(2)来做到这一点。 在node.js中是否有这样的东西?
I'd like to restrict child processes from writing too much data or taking up too much cpu time (infinite loop). In C, I'd call setrlimit(2) to do that. Is there something like this in node.js?
原文:https://stackoverflow.com/questions/8141057
最满意答案
在服务器端调用
close()
或flush()
:public static int PLAYER1 = 1; ObjectOutputStream oos = new ObjectOutputStream(player1.getOutputStream()); oos.writeInt(PLAYER1); oos.flush(); // OR oos.close();
flush()
将发送已写入客户端的任何数据。 这将使您可以重用oos
。如果你不再需要
oos
,请调用close()
。 调用close()
将刷新尚未发送的任何数据。Call
close()
orflush()
on server side:public static int PLAYER1 = 1; ObjectOutputStream oos = new ObjectOutputStream(player1.getOutputStream()); oos.writeInt(PLAYER1); oos.flush(); // OR oos.close();
flush()
will send any data already written to the client. This will leave you the possibility to reuseoos
.If you don't need
oos
anymore, callclose()
. Callingclose()
will flush any data not already sent.
相关问答
更多-
ObjectInputStream的(socket.getInputStream());(ObjectInputStream(socket.getInputStream()); does not work)[2022-06-28]
ObjectInputStream构造函数从给定的InputStream中读取数据。 为了实现此目的,在尝试打开ObjectInputStream之前, 必须在构造之后立即刷新ObjectOutputStream(以写入初始标题)。 另外,如果您想要为每个连接发送多个对象,则必须打开一次ObjectOutputStream,并在套接字的生命周期中使用它(例如,您的shareToAll方法)。 the ObjectInputStream constructor reads data from the give ... -
TCP Socket使用Android服务。(TCP Socket using Android service. how can i declare stream objects in MainActivity)[2022-12-08]
1.是否可以使用服务的Socket对象(clientsocket)在MainActivity中创建PrintWriter对象? 您可以使用messager并将您的对象从服务发送到活动。 看到这个将数据从服务发送到活动: 将服务中的JSON数据发送到Android中的UI 2.是否可以将值从MainActivity传递到服务(即IP地址和端口)? 是的,您可以通过意图传递ip / port并将其置于onStartcomant服务中 即 i.putExtra(name, value); i.getString ... -
只需使用javax.swing.ProgressMonitorInputStream 。 是否所有努力工作都适合你。 Just use a javax.swing.ProgressMonitorInputStream. Does all the hard work for you.
-
您正在获取AggregateException因为它是从async方法生成的 所以是的,你必须检查InnerException的HResult SocketErrorStatus socketErrorStatus = SocketError.GetStatus(ex.InnerException.HResult); 这将为您提供所需的输出。 You are getting an AggregateException since it's being generated from an async met ...
-
整个代码很乱。 您应该使用Thread而不是Async来完成更少的代码。 任何方式,替换byte[] bufferCopy = (byte[])buffer.Clone(); 代码行 byte[] bufferCopy = new byte[buffer.Length]; System.Buffer.BlockCopy(buffer, 0, bufferCopy, 0, bufferCopy.Length); 而对于ProcessFrame((byte[])state.buffer.Clone()); , ...
-
在服务器端调用close()或flush() : public static int PLAYER1 = 1; ObjectOutputStream oos = new ObjectOutputStream(player1.getOutputStream()); oos.writeInt(PLAYER1); oos.flush(); // OR oos.close(); flush()将发送已写入客户端的任何数据。 这将使您可以重用oos 。 如果你不再需要oos ,请调用close() 。 调用c ...
-
你有解决方案。 如果你(服务器)有2个打开的套接字,一个来自A,另一个来自B,你所要做的就是: 从A读取的内容将其发送给B,从B读取的内容将其发送给A. 当套接字A或套接字B关闭(或有错误)时,您(服务器)关闭两个套接字并且会话结束。 要处理这种情况,您需要使用select或其他非阻塞机制来查看哪个套接字具有要读取的数据并采取相应的操作。 我建议使用一个单独的线程来完成这项工作,这样服务器就可以免费参加更多的客户。 You have the solution at your hand. If you (th ...
-
这可能是因为循环永远不会停止: while(true) { //code 你可以使用我为java服务器和客户端制作的类: ChatCleint package com.weebly.foxgenesis.src; import java.net.*; import java.io.*; public final class ChatClient { private Socket socket = null; private DataOutputStrea ...
-
需要通过Socket获得字节帮助(Need help on bytes via Socket)[2023-07-09]
Read对发送的内容一无所知; TCP基本上只是一个流 - 所以没有什么可以说你在一次调用Read拥有所有数据; 你可以有: 确切地说,您发送的数据量 一条消息的一部分 17条消息 一条消息的结束和下一条消息的开始 消息中的1个单独字节 您需要设计某种帧协议,让接收者知道他们何时拥有整个消息。 这可能像长度前缀一样简单,也可能更复杂。 然后,您应该将数据缓冲在内存中(或逐步处理),直到您拥有整个消息。 对Read一次调用不太可能代表单个完整的消息。 实际上,如果消息大于newstate.buffer ,则保 ... -
使用Socket的PHP到Java(PHP to Java using Socket)[2023-06-12]
确定发现了问题,你必须在php中显示行结束的位置,以便套接字可以发送它,它将像魅力一样工作:) socket_write ($my_socket, $data."\r\n", strlen ($data."\r\n")); ok found the problem, you have to show where is the end of the line in php so the socket could send it, and it will work like a charm :) sock ...