我寫過一部分代碼,服務器將從客戶端接收指令並將請求發送回客戶端。 但我想每5秒鐘從客戶端發送指令(Json消息)。我怎麼能這樣做?如何每五秒向服務器發送指令
public static void main(String[] args) throws IOException, InterruptedException, ParseException {
SynchronisedFile fromFile = null;
fromFile=new SynchronisedFile("file.txt");
fromFile.CheckFileState();
int counter = 1;
int receivedCounter = 1;
String receivedType=null;
DatagramSocket clientSocket = new DatagramSocket();
InetAddress IPAddress = InetAddress.getByName("localhost");
byte[] sendData = new byte[1024];
byte[] receiveData = new byte[1024];
while(true){
Instruction inst = fromFile.NextInstruction();
//System.out.println(inst.ToJSON());
JSONObject jo = new JSONObject();
jo.put("type", "inst");
jo.put("inst", inst.ToJSON());
jo.put("counter", counter);
//System.out.println(jo);
counter++;
sendData = jo.toString().getBytes();
DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, 4144);
clientSocket.send(sendPacket);
DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
clientSocket.receive(receivePacket);
String receivedMessage = new String(receivePacket.getData());
String subReceivedMessage = receivedMessage.trim();
final JSONParser parser = new JSONParser();
JSONObject obj;
obj = (JSONObject) parser.parse(subReceivedMessage);
謝謝。非常有幫助 – 2014-09-21 04:09:37
如果這是你正在尋找的東西,一定要把它標記爲答案。 – mkobit 2014-09-21 04:31:00