怎么把主线程跟附加线程分离?

问题描述

RT,我在遍历的时候重新启动了一个线程,现在我要对这个线程进行暂停和继续的操作。但是这个线程跟主程序线程是绑在一起的,我一暂停整个程序都挂起来了。有什么办法能把那个新线程分离出来,暂停的时候不影响主程序???

解决方案

解决方案二:
开新线程就行了
解决方案三:
开始遍历的时候我是开启了一个新线程,在程序里判断的时候Thread.CurrentThread还是当前线程
解决方案四:
没有解决办法吗?
解决方案五:
你把遍历这个任务给你新线程,然后你想遍历就通知子线程遍历,这样主线程停了也没关系了
解决方案六:
在程序里判断的时候Thread.CurrentThread还是当前线程??在那个位置进行的判断?
解决方案七:
新建线程的时候保存辅助线程到一个变量里面去,这样就可以直接操作它了Threadth=newThread();th.Start();th.Stop();
解决方案八:
switch(((Button)sender).Text){case"开始检查":cha=newThread(newThreadStart(threadchange));cha.Start();this.btnCheck.Text="暂停";break;case"暂停":if(cha.ThreadState==ThreadState.Running){cha.Suspend();this.btnCheck.Text="继续";}break;case"继续":if(cha.ThreadState==ThreadState.Suspended||cha.ThreadState==ThreadState.SuspendRequested){cha.Resume();this.btnCheck.Text="暂停";}break;}这是我的按钮事件,当第二次点击按钮也就是想暂停的时候,根本就进不去那个条件。。。原因是这个时候那个线程不知为什么是停止的。把那个cha设置为Thread.CurrentThread就可以进那个暂停的条件,但是整个主程序都挂起了,就像死了一样。。。

时间: 2024-10-11 11:13:32

怎么把主线程跟附加线程分离?的相关文章

编程-安卓,主线程和子线程间传递消息,出错·,求大家帮我看看

问题描述 安卓,主线程和子线程间传递消息,出错·,求大家帮我看看 我的代码如下: activitymain.xml: xmlns:tools=""http://schemas.android.com/tools"" android:layout_width=""match_parent"" android:layout_height=""match_parent"" android:pa

android中UI主线程与子线程深入分析_Android

本文较为深入的分析了android中UI主线程与子线程.分享给大家供大家参考.具体如下: 在一个Android 程序开始运行的时候,会单独启动一个Process.默认的情况下,所有这个程序中的Activity或者Service(Service和 Activity只是Android提供的Components中的两种,除此之外还有Content Provider和Broadcast Receiver)都会跑在这个Process. 一个Android 程序默认情况下也只有一个Process,但一个Pr

在C#中主线程和子线程如何实现互相传递数据

在C#中主线程和子线程如何实现互相传递数据                                         老帅    在C#中创建线程Thread时,可以有多种方法,而主线程和子线程之间又如何实现互相传递数据,每种创建方法传递参数的效果是不同的,逐一看一下:  一.不带参数创建Thread  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 using System;  using System.Collec

JAVA进阶----主线程等待子线程各种方案比较(转)

创建线程以及管理线程池基本理解 参考原文链接:http://www.oschina.net/question/12_11255?sort=time  一.创建一个简单的java线程 在 Java 语言中,一个最简单的线程如下代码所示:  Java代码   Runnable runnable = new Runnable(){      public void run(){         System.out.println("Run");      }   }   可通过下面一行代码

调试Android程序只走主线程不走子线程

问题描述 调试Android程序只走主线程不走子线程 调试Android程序只走主线程不走子线程调试Android程序只走主线程不走子线程调试Android程序只走主线程不走子线程 解决方案 断点打在run方法内 解决方案二: 启动线程要调用start方法,不要通过run方法调用,你怎么用的

Android Handler主线程和一般线程通信的应用分析_Android

Handler的定义:主要接受子线程发送的数据, 并用此数据配合主线程更新UI.解释: 当应用程序启动时,Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发, 比如说, 你要是点击一个 Button ,Android会分发事件到Button上,来响应你的操作.如果此时需要一个耗时的操作,例如: 联网读取数据,或者读取本地较大的一个文件的时候,你不能把这些操作放在主线程中,如果你放在主线程中的话,界面会出现假死现象, 如果5秒钟还没有完成的话,会

Android中主线程与子线程之间相互通信教程

有时候,我们也可能碰到这样子的一种需求:需要主线程来向子线程发送消息,希望子线程来完成什么任务.如果这样子应该怎么做呢?这就是这篇文章将要讨论的内容. 一.HandlerThread类 主线程发送消息给子线程,通常思维逻辑就是:其实很简单,在主线程中实例化一个Handler,然后让他与子线程相关联(只要它与子线程的Looper相关联即可),这样子它处理的消息就是该子线程中的消息队列,而处理的逻辑都是在该子线程中执行的,不会占用主线程的时间.那么我们就来实现一下,看看这样子到底行得通还是行不通.新

C++实现CreatThread函数主线程与工作线程交互的方法_C 语言

本文实例讲述了C++开启线程CreatThread函数的使用,实现主线程与工作线程交互的功能.分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: //线程函数  DWORD WINAPI ThreadProc(LPVOID lpParameter)  {      for (int i=0;i<20;i++)      {          printf("I'm in thread,count=%d\n",i);      }      return 0;  } 

Handler详解系列(四)——利用Handler在主线程与子线程之间互发消息

MainActivity如下: package cc.c; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.widget.TextView; /** * Demo描述: * * 示例步骤如下: * 1 子线程给子线程本身发送消息 * 2 收到1的消