<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      flash中通過XMLSocket監控生產系統(3-2)

      [摘要]不斷向客戶端發送不同類型的有意義的XML數據,模擬生產系統的不同狀態?紤]到功能的簡便性,服務端只是每2秒向客戶端發送一條隨機類型的數據,而沒有包括模擬生產系統及時的狀態,如在某一時刻發生錯誤時,發送一條表示錯誤類型的數據,在實際設計編程中,基于本文中的例子,可以輕松擴展實現所需功能。 publi...
      不斷向客戶端發送不同類型的有意義的XML數據,模擬生產系統的不同狀態。考慮到功能的簡便性,服務端只是每2秒向客戶端發送一條隨機類型的數據,而沒有包括模擬生產系統及時的狀態,如在某一時刻發生錯誤時,發送一條表示錯誤類型的數據,在實際設計編程中,基于本文中的例子,可以輕松擴展實現所需功能。

      public void run() {

      try {

      while (true) {

      System.out.println(this.getName() + "------" + i++);
      d = new Date();

      if(new Random().nextInt()*100 < 50){

      str = "< MESSAGE TYPE=\"error\" TEXT=\"Hello, my name is Morgan!\" TIME=\"" + d.toString() + "\"/>";
      } else {

      str = "";
      }

      byte[] s= str.getBytes();

      out.write(s);
      out.write(0);
      out.flush();

      this.sleep(2000);
      }

      } catch (Exception ex){

      ex.printStackTrace();
      }
      }


        以上語句是自定義線程類ServerThread的run()方法,首先利用隨機數條件if語句,隨機產生不同類型的XML數據,接著用OutputStream輸出流對象,輸出XML數據的字節數組數據,為了表示該條數據已發送完成,再發送一個0字節,隨后調用輸出流的flush()方法清空緩存,讓輸出流立即發送數據。最后使線程暫停2秒鐘,等線程再次執行時,循環以上步驟。

      這樣,在客戶端就可以每2秒鐘收到一條隨機類型的XML數據。詳見本文附帶的程序源碼。

      在服務端,為了簡便,只是隨機向兩種類型(normal類型和error類型)的數據:

      < MESSAGE TYPE="error" TEXT=" 數據內容" TIME=" + 系統時刻+ / >"
      < MESSAGE TYPE="normal" TEXT=" 數據內容" TIME=" + 系統時刻+ / >"





      日韩精品一区二区三区高清