コード例 #1
0
 public void Disconnect()
 {
     RecieverThread?.Abort();
     Stream?.Flush();
     Stream?.Close();
     Client?.Close();
 }
コード例 #2
0
            public override void Run()
            {
                byte[] btBuffer = new byte[1024]; // btBuffer store for the stream
                int    bytes;

                // Keep listening to the InputStream while connected
                while (!done)
                {
                    try
                    {
                        //Read from the stream
                        bytes = btInStream.Read(btBuffer, 0, btBuffer.Length);
                        string readMessage = "" + bytes;

                        Java.Lang.String rMessage = new Java.Lang.String(btBuffer, 0, bytes);
                        readMessage = (string)rMessage;

                        if (readMessage != null)
                        {
                            RecieverThread rct = new RecieverThread(readMessage);
                            rct.Start();
                        }


                        //Send the message to the ui
                        btHandler.ObtainMessage(Constants.MESSAGE_READ, bytes, -1, btBuffer).SendToTarget();

                        /*
                         * BufferedReader br = null;
                         * StringBuilder sb = new StringBuilder();
                         *
                         * String line;
                         * try {
                         *
                         * br = new BufferedReader(new InputStreamReader(in));
                         *
                         * while ((line = br.readLine()) != null) {
                         *  sb.append(line);
                         * }
                         *
                         * } catch (IOException e) {
                         * e.printStackTrace();
                         * } finally {
                         * if (br != null) {
                         *  try {
                         *      br.close();
                         *  } catch (IOException e) {
                         *      e.printStackTrace();
                         *  }
                         * }
                         * }*/
                    }
                    catch (Java.IO.IOException e)
                    {
                        e.PrintStackTrace();
                        break;
                    }
                }
            }
コード例 #3
0
 private void RaiseErrorEvent(FileReceiverErrorArgs arg)
 {
     ReceiveError?.Invoke(arg);
     if (arg.IsCritical)
     {
         RecieverThread?.Abort();
         TimerThread.Abort();
     }
 }