这个问题没搞清楚,希望知情人指点(描述见内容)

lulianqi 2015-06-04 01:53:54

class cc
{
public string str = "";
public int i = 8;
public int getI()
{
return i;
}
}

struct myTestStruct
{
public List<string> strs;
public cc sc;
public void addstr(string yorStr)
{
if (strs == null)
{
strs = new List<string>();
}
strs.Add(yorStr);
}
}

myTestStruct myTest3()
{
myTestStruct testStuct = new myTestStruct();
testStuct.addstr("strstr");
return testStuct;
}





睡不着觉啊

为了重现问题 提取简化了 以上代码,方便定位。
只要调用myTest3() 就会出现“由于线程停在某个无法进行垃圾回收的点”
测试现象上看testStuct.addstr("strstr"); 是直接原因 【其他对问题复现没有关系的代码全部去掉了】
而且如果把myTestStruct改成引用类型,或者把myTestStruct里的引用类型sc去掉(sc是一个为了重现随意定义的class),问题就消失了

难道myTest3 里 testStuct出栈的时候 vs认为strs已经销毁了

问题查了很久才知道什么地方,虽然可以通过一些手段绕过去,不过感觉没搞清楚问题原因实在无法入眠。 希望能得到大家的指点
...全文
247 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lulianqi 2015-06-04
  • 打赏
  • 举报
回复
引用 6 楼 starfd 的回复:
单步F11一步步执行下来我也试过了,没这个问题啊……
受您启发。换电脑换环境又尝试了几次 电脑1(64位win8) 电脑2(32位win8) 电脑1+.net3.5 有问题 电脑1+.net4.0 ok 电脑2+.net3.5 ok 电脑2+.net4.0 ok 这样现象看起来,代码本身有问题的可能性比较小了,应该是计算机环境不同导致的。
  • 打赏
  • 举报
回复
单步F11一步步执行下来我也试过了,没这个问题啊……
lulianqi 2015-06-04
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
没你说的这种问题
十分感谢 是我没有说清楚,直接运行 函数结束的时候取值 是没有问题的,只有在单步调试的时后 到return处 vs的监视器就显示“由于线程停在某个无法进行垃圾回收的点”
lulianqi 2015-06-04
  • 打赏
  • 举报
回复
引用 3 楼 lulianqi 的回复:
[quote=引用 1 楼 xuzuning 的回复:] vs2010 经测试,没有发现你说的问题
十分感谢 是我没有说清楚,直接运行 函数结束的时候取值 是没有问题的,只有在单步调试的时后 到return处 vs的监视器就显示“由于线程停在某个无法进行垃圾回收的点”[/quote] 十分感谢 是我没有说清楚,直接运行 函数结束的时候取值 是没有问题的,只有在单步调试的时后 到return处 vs的监视器就显示“由于线程停在某个无法进行垃圾回收的点”
lulianqi 2015-06-04
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
vs2010 经测试,没有发现你说的问题
十分感谢 是我没有说清楚,直接运行 函数结束的时候取值 是没有问题的,只有在单步调试的时后 到return处 vs的监视器就显示“由于线程停在某个无法进行垃圾回收的点”
  • 打赏
  • 举报
回复
没你说的这种问题
xuzuning 2015-06-04
  • 打赏
  • 举报
回复
vs2010 经测试,没有发现你说的问题
内容概要:本文系统研究了基于粒子群算法(PSO)的微网优化调度方法,并重点引入需求响应机制以提升微电网运行的经济性与可靠性。研究构建了一个综合考虑风能、光伏、储能、柴油发电机、燃气轮机等多种分布式能源的微电网模型,建立了以最小化系统综合运行成本为目标,涵盖燃料成本、环境污染惩罚、购售电费用及需求响应激励成本的多目标优化模型。文中详细阐述了粒子群算法的数学原理及其在求解此类非线性、多维度、带约束的复杂优化问题中的独特优势,通过Matlab编程实现了完整的算法流程与仿真分析,验证了所提方法在有效降低系统运行成本、平抑负荷波动、提高可再生能源消纳率以及增强微网应对需求侧变化灵活性方面的显著效果。; 适合人群:具备一定电力系统、优化理论基础和Matlab编程能力的高校研究生、从事新能源、智能电网及相关领域研究的科研人员,以及致力于微电网规划与运行优化的工程技术人员。; 使用场景及目标:①用于教学与科研,深入理解微网优化调度的核心挑战、数学建模方法及智能优化算法的应用;②为实际微电网项目的规划设计、运行策略制定提供可靠的算法工具和技术参考;③作为智能优化算法(如PSO)在综合能源系统中成功应用的典型案例,推动先进算法在能源互联网领域的研究与实践。; 阅读建议:建议读者在学习过程中,务必结合文中的Matlab代码进行上机实践,重点关注目标函数的设计逻辑、各类物理约束(如功率平衡、设备出力、储能容量等)的数学表达,以及PSO算法中关键参数(如种群规模、惯性权重、学习因子)的设置与调优技巧,可通过改变参数或扩展模型(如加入更多能源形式或转化为多目标优化)来加深理解和掌握。
2026年,法学硕士工程师的实际收入是多少?每天使用人工智能工具会给你带来更多回报还是让你付出代价?5000个人工智能和数据科学角色,解码。 经典的数据科学薪酬数据集在人工智能工具时代之前就停止了。这是为它而建的:27列,涵盖职位、经验水平、就业类型、公司规模、公司所在地、员工居住地、远程比率、行业、教育、主要语言、经验年限、美元工资、股权和奖金、每周工作时间、每日人工智能工具使用和工作时间、证书、面试机会、工作转换、技能提升时间以及自我报告的自动化恐惧分数。5000行,零缺失值——工资真正受到资历、市场、公司规模、行业和远程设置的影响,因此回归模型实际上学到了一些东西。 让你开始的想法: -构建一个薪酬回归模型——哪个特征的权重最大? -远程比率是伴随着薪酬溢价还是减薪? -LLM/AI头衔是否比经典的数据科学家职位更受欢迎,以及赚多少钱? -按国家绘制薪酬图——一旦你控制了资历,市场差距有多大? -谁最害怕自动化?将分析师与ML工程师进行比较。 -在你控制多年的经验后,是否有博士学位溢价? -日常使用人工智能工具是否与满意度、工作时间或薪酬相关?

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧