私は CS の第一人者でも Java の専門家でもないので、次の質問に対する答えが明らかである場合はご容赦ください。
HTTP サーバーへのクエリの送信、応答の取得、および呼び出し元への応答を処理するクラスを作成しました。
私の質問はこれです。その関数を 1 回呼び出して、応答に時間がかかり、遅延中にもう一度呼び出した場合、遅延した最初の呼び出しが 2 番目の呼び出しの実行に干渉しますか?
一般的な要求により...ここにいくつかのソースコードがあります:
package com.cambrothers.wms.module;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.HashMap;
public class ServerComm {
public HashMap<String, String> sendData(String endpoint, String requestParameters){
HashMap<String, String> response_data = new HashMap<String, String>();
System.out.println("GetRequest");
if (endpoint.startsWith("http://"))
{
// Send a GET request to the servlet
try
{
// Send data
String urlStr = endpoint;
if (requestParameters != null && requestParameters.length () > 0)
{
urlStr += "?" + requestParameters;
}
URL url = new URL(urlStr);
URLConnection conn = url.openConnection ();
// Get the response
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuffer sb = new StringBuffer();
String line;
while ((line = rd.readLine()) != null)
{
sb.append(line);
}
rd.close();
String result = sb.toString();
String[] values = result.split("&");
String[] kp = null;
for(int i =0; i < values.length ; i++){
kp = values[i].split("=");
response_data.put(kp[0], kp[1]);
}
} catch (Exception e)
{
e.printStackTrace();
}
}
return response_data;
}
}
気を付けて