2016-10-15 6 views
0

私のコードはまだ動作しています。メッセージを送信してメッセージが送信されるまで待つことができます。メッセージを送信する時間は約10秒ですが、次のメッセージが送信されるまでに1秒間必要なので、私にとってはうまくありません。問題を明らかにするために見てみましょう。現在のメッセージが処理中の状態で、新しいメッセージが送信されるのを待ちます。

MSG4 - >メッセージ3 - > MSG2 - > MSG1

MSG4 MSG1が失敗した/送信されるまで、メッセージ3とMSG2はまだ待っています。ここ

は私の main.java最初のメッセージが正常に送信された

for(int i=0; i<4; i++) { 
    new sendMessage().doIt("09483221***","This is the message"); 
    Thread.sleep(1000); 
} 

クラスにsendMessage.java

public void doIt(String mobile_number, String message) throws Exception 
    { 
      OutboundNotification outboundNotification = new OutboundNotification(); 
      System.out.println("Example: Send message from a serial gsm modem."); 
      System.out.println(Library.getLibraryDescription()); 
      System.out.println("Version: " + Library.getLibraryVersion()); 
      SerialModemGateway gateway = new SerialModemGateway("modem.com5", "COM5", 921600, "", ""); 
      gateway.setInbound(true); 
      gateway.setOutbound(true); 
      Service.getInstance().setOutboundMessageNotification(outboundNotification); 
      Service.getInstance().addGateway(gateway); 
      Service.getInstance().startService(); 
      System.out.println(); 
      System.out.println("Modem Information:"); 
      System.out.println(" Manufacturer: " + gateway.getManufacturer()); 
      System.out.println(" Model: " + gateway.getModel()); 
      System.out.println(" Serial No: " + gateway.getSerialNo()); 
      System.out.println(" SIM IMSI: " + gateway.getImsi()); 
      System.out.println(" Signal Level: " + gateway.getSignalLevel() + " dBm"); 
      System.out.println(" Battery Level: " + gateway.getBatteryLevel() + "%"); 
      System.out.println(); 



      OutboundMessage msg = new OutboundMessage(mobile_number, message); 
      Service.getInstance().sendMessage(msg); 

      System.out.println(msg); 
      System.out.println("Now Sleeping - Hit <enter> to terminate."); 
      // System.in.read(); 
      Service.getInstance().stopService(); 
    } 

コードですが、その上の第二1とは、未送信でした。 最初のメッセージが送信されるまでこれらを待ちますか?

答えて

0

あなたが第一のメッセージを送った後、あなたのポートは、次のSMSのthatsのために使用できない理由uは一度ソリューションを二SMS を送って、あなたの最初のSMSはポートを終了し、第二SMSを送信送信することはできません

関連する問題