jmeter线程组的属性_netty线程模型详解

jmeter线程组的属性_netty线程模型详解情境:最近用winform做一个小程序,主要是用来执行一些sql语句,无奈数据量太大,执行一次要二十分钟左右,执行期间界面根本不能再进行其它操作,就连最小化窗口都不行,一动就跟死机差不多了.因此到网上搜了一下,找到.net后台线程的概念.(高手请绕道!)前台线程和后台线程之间的选择.NETFramework中的所有线程都被指定为前台线程或后台线程。这两种线程唯一的区别是—后台线程不会

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

情境: 最近用winform做一个小程序,主要是用来执行一些sql语句,无奈数据量太大,执行一次要二十分钟左右,执行期间界面根本不能再进行其它操作,就连最小化窗口都不行,一动就跟死机差不多了.

因此到网上搜了一下,找到.net后台线程的概念.(高手请绕道!)

前台线程和后台线程之间的选择
.NET Framework 中的所有线程都被指定为前台线程或后台线程。这两种线程唯一的区别是 — 后台线程不会阻止进程终止。在属于一个进程的所有前台线程终止之后,公共语言运行库 (CLR) 就会结束进程,从而终止仍在运行的任何后台线程。

在默认情况下,通过创建并启动新的 Thread 对象生成的所有线程都是前台线程,而从非托管代码进入托管执行环境中的所有线程都标记为后台线程。然而,通过修改 Thread.IsBackground 属性,可以指定一个线程是前台线程还是后台线程。通过将 Thread.IsBackground 设置为 true,可以将一个线程指定为后台线程;通过将 Thread.IsBackground 设置为 false,可以将一个线程指定为前台线程。

示例:
下面的代码示例对比了前台线程与后台线程的行为。创建一个前台线程和一个后台线程。前台线程使进程保持运行,直到它完成它的 while 循环。前台线程完成后,进程在后台线程完成它的 while 循环之前终止。

jmeter线程组的属性_netty线程模型详解
using
 System;
jmeter线程组的属性_netty线程模型详解

using
 System.Threading;
jmeter线程组的属性_netty线程模型详解
jmeter线程组的属性_netty线程模型详解

class
 Test
jmeter线程组的属性_netty线程模型详解jmeter线程组的属性_netty线程模型详解


{

jmeter线程组的属性_netty线程模型详解    
static void Main()
jmeter线程组的属性_netty线程模型详解jmeter线程组的属性_netty线程模型详解    
{

jmeter线程组的属性_netty线程模型详解        BackgroundTest shortTest 
= new BackgroundTest(10);
jmeter线程组的属性_netty线程模型详解        Thread foregroundThread 
= 
jmeter线程组的属性_netty线程模型详解            
new Thread(new ThreadStart(shortTest.RunLoop));
jmeter线程组的属性_netty线程模型详解        foregroundThread.Name 
= ForegroundThread;
jmeter线程组的属性_netty线程模型详解
jmeter线程组的属性_netty线程模型详解        BackgroundTest longTest 
= new BackgroundTest(50);
jmeter线程组的属性_netty线程模型详解        Thread backgroundThread 
= 
jmeter线程组的属性_netty线程模型详解            
new Thread(new ThreadStart(longTest.RunLoop));
jmeter线程组的属性_netty线程模型详解        backgroundThread.Name 
= BackgroundThread;
jmeter线程组的属性_netty线程模型详解        backgroundThread.IsBackground 
= true;
jmeter线程组的属性_netty线程模型详解
jmeter线程组的属性_netty线程模型详解        foregroundThread.Start();
jmeter线程组的属性_netty线程模型详解        backgroundThread.Start();
jmeter线程组的属性_netty线程模型详解    }

jmeter线程组的属性_netty线程模型详解}


jmeter线程组的属性_netty线程模型详解
jmeter线程组的属性_netty线程模型详解

class
 BackgroundTest
jmeter线程组的属性_netty线程模型详解jmeter线程组的属性_netty线程模型详解


{

jmeter线程组的属性_netty线程模型详解    
int maxIterations;
jmeter线程组的属性_netty线程模型详解
jmeter线程组的属性_netty线程模型详解    
public BackgroundTest(int maxIterations)
jmeter线程组的属性_netty线程模型详解jmeter线程组的属性_netty线程模型详解    
{

jmeter线程组的属性_netty线程模型详解        
this.maxIterations = maxIterations;
jmeter线程组的属性_netty线程模型详解    }

jmeter线程组的属性_netty线程模型详解
jmeter线程组的属性_netty线程模型详解    
public void RunLoop()
jmeter线程组的属性_netty线程模型详解jmeter线程组的属性_netty线程模型详解    
{

jmeter线程组的属性_netty线程模型详解        String threadName 
= Thread.CurrentThread.Name;
jmeter线程组的属性_netty线程模型详解        
jmeter线程组的属性_netty线程模型详解        
for(int i = 0; i < maxIterations; i++)
jmeter线程组的属性_netty线程模型详解jmeter线程组的属性_netty线程模型详解        
{

jmeter线程组的属性_netty线程模型详解            Console.WriteLine(
{0} count: {1}
jmeter线程组的属性_netty线程模型详解                threadName, i.ToString());
jmeter线程组的属性_netty线程模型详解            Thread.Sleep(
250);
jmeter线程组的属性_netty线程模型详解        }

jmeter线程组的属性_netty线程模型详解        Console.WriteLine(
{0} finished counting., threadName);
jmeter线程组的属性_netty线程模型详解    }

jmeter线程组的属性_netty线程模型详解}


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183321.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • notify()和 notifyAll()有什么区别_notify怎么记忆

    notify()和 notifyAll()有什么区别_notify怎么记忆今天看到一篇问题,提问线程唤醒顺序。具体代码如下:importjava.util.LinkedList;importjava.util.List;publicclassThreadRunSort{/***对象锁*/privatefinalObjectobject=newObject();p…

    2022年9月7日
    0
  • PyCharm与Python的安装教程2021.11

    PyCharm与Python的安装教程2021.11文章预览:一、进入官网下载PyCharm安装包二、等待下载完成后点击进行安装三、Python安装(只介绍最新版本)四、第一个PyCharm程序五、PyCharm安装第三方库方法一、进入官网下载PyCharm安装包自行进入PyCharm官网或点击https://www.jetbrains.com/pycharm/download/#section=windows下载的是社区版,免费并且足够使用。二、等待下载完成后点击进行安装1.点击next2.选择自己要安装的目录3.勾选一些设定(1

    2022年8月28日
    4
  • settimeout()方法_setinterval函数

    settimeout()方法_setinterval函数setTimeOut()は、指定された時間「待ってから」指定された動作を行う関数です。setTimeOut():等待指定时间,执行指定方法。 setTimeInterval()は、指定された時間「間隔ごとに」指定された動作を行う関数です。setTimeInterval():间隔指定时间,执行指定方法。 処理の開始を待ちたいのであれば「setTimeOut」を使いますし、如果是从处理…

    2022年10月5日
    0
  • python内存回收的问题

    python内存回收的问题

    2021年11月27日
    33
  • 北京异地居住证怎么办理(半异地居住证手续)

    让开,让我来,现在的回答都太远古了!我来给大家分享下流程:异地办理护照提供材料1、按居住证类型预约身份证(原件及复印件)+居住证(原件及复印件)2、按就业人员类型预约身份证+户口本+暂住证(工作居住证)或居住证身份证需正反面复印+户口本首页+本人页+暂住证或工作居住证复印有效期页的所有信息页3、按非本市配偶类型预约身份证+户口本+结婚证+配偶一方的户口本的复印件…

    2022年4月11日
    100
  • VB.NET 用循环判断文本框是否为空

    VB.NET 用循环判断文本框是否为空VB.NET 用循环判断文本框是否为空

    2022年4月24日
    112

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号