C#中线程的,为什么每次点击“开始执行(不调试)”时得到的结果都不一样呢?求指教

代码展示如下:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;... 代码展示如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;//线程的引用

namespace Test1
{
class Program
{
static int y;
static void Main(string[] args)
{
y = 0;

Thread t = new Thread(writeY);//C#线程的实例化,调用writeYY方法
t.Start();//线程开始

Console.WriteLine("线程慨念-初步接触");

while (true)
{
Console.WriteLine("+++++++++++++++++++++++++++++");
y++;
if (y == 10)
{
Console.WriteLine("语句输出十条,结束执行!");
break;
}
}
}

//方法-简单的线程1
static void writeY()
{
int i = 1;
while (true)
{
Console.WriteLine("C#线程的学习——测试"+i);
i++;
if (i == 11)
{
Console.WriteLine("语句输出十条,结束执行!");
break;
}
}
}

//C#中定义的全局变量需要加static
void mm()
{
y = 11;
}
}
}
展开
 我来答
陆风超
2015-05-16 · 超过22用户采纳过TA的回答
知道答主
回答量:64
采纳率:0%
帮助的人:32.9万
展开全部

应该是没有释放掉缓存资源吧

Console.Clear();//控制台资源清除;
追问
不是这样的哦。
刚知道,线程默认的执行方式不是一步一步按顺序执行的的,而是多步同时执行,像在上述问题中,线程在执行语句时先抢占到输出指令的就优先被执行到,于是就出现了我遇到的这个问题,每次输出的顺序都有所区别。
郁闷了好久的问题终于算是解决了。。。
不过,还是要谢谢您哦!谢谢!
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式