title: How can I restart a thread in java/Android from a button?
body: <p>I have a thread in java/Android like this:</p>
  
  <pre><code>Handler handler = new Handler() {
  
      @Override
      public void handleMessage(Message msg) {
          // TODO Auto-generated method stub
          update_i();
      }
  };
  
  
  
  @Override
  protected void onStart() {
      // TODO Auto-generated method stub
      super.onStart();
  
      Thread myThread = new Thread(new Runnable() {
          public void run() {
              while (true) {
                  try {
                      handler.sendMessage(handler.obtainMessage());
                      Thread.sleep(timer);
                  } catch (Throwable t) {
                  }
              }
          }
      });
  
      myThread.start();
  }
  </code></pre>
  
  <p>The thread works fine when I run my application. But I want to start/restart the thread with a button. </p>
  
  <pre><code>Button.OnClickListener StartButtonOnClickListener = new Button.OnClickListener() {
      @Override
      public void onClick(View v) {
  
          //start/restart the thread
      }
  };
  </code></pre>
  
  <p>If I copy the thread into the button I just make a new thread every time the user clicks on the button. I want to run the thread when the user first time click on the button, "kill it" and start from the beginning if the user click on the button a second time (I don’t want to start a second thread).  </p>