【问题标题】:Run Thread Until 2 Integers are the Same运行线程直到 2 个整数相同
【发布时间】:2018-05-22 05:51:23
【问题描述】:

我想在后台检查 2 个整数是否相同。当它们相同时,我希望线程停止并且我希望调用我的函数之一。我该怎么做?

【问题讨论】:

标签: java java-threads background-thread


【解决方案1】:

我在这里假设您知道如何在后台设置和执行 java 线程。在你的runnable中,当定义你的run()函数时,你可以设置一个while true循环,然后比较两个数字的值,如果它们相等则中断循环。如果它们不相等,它会在循环之前休眠 x 毫秒。在循环之后,如果值相等,则调用要调用的函数。它应该是这样的:

public void run() {
    while(true){
        if(a == b){
            break;
        }
         Thread.sleep(200);
    }
    myfunction();
}

【讨论】:

    【解决方案2】:

    试试这个,

    Runnable runnable = new Runnable() {
        @Override
        public void run() {
            if (!runnable.interrupted()) {
               if( varOne.equals(varTwo)) {
                   yourFn();
                runnable.interrupted();
               } else {
                   //Do nothing.
               }
            }
    };
    new Thread(runnable).start();
    

    【讨论】:

      猜你喜欢
      • 2010-10-20
      • 2021-08-01
      • 2012-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多