作者wind681201 (阿风~~)
看板C_Sharp
标题[问题] Parallel.ForEach平行处理
时间Wed Apr 1 21:57:49 2020
各位大大:
今天用平行处理,发生了很奇怪的事,我有一个funcation a()里面只有一行,
就是用dapper 去资料库抓资料,
conn.query(sql);
而conn, 在初始化时,已经建立好,所以想说共用就好。
然後在另一个funcation B()呼叫了a()。
是用Parallel.ForEach,重点来了,我用一般的foreach去跑,很正常。但用平行去跑
却会在某几笔资料发生奇怪的错误,其中让我不解的是,conn居然会close。
请问用平行执行,需要注意什麽地方吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.183.119.191 (泰国)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1585749473.A.D2B.html
1F:→ luiGiF: 有使用static吗 ? 04/01 23:12
2F:→ wind681201: 完全没有 04/02 08:11
3F:→ GoodFriday: 资料库连线没有 Thread Safe 所以不能共用 04/02 22:21
4F:→ ssccg: 基本上资料库连线通常每个thread要自己一个 04/03 23:25
5F:→ ssccg: 资料库的session/transaction管理都是以连线为单位 04/03 23:25
6F:→ wind681201: 谢谢各位,我再试看看 04/05 13:07