找回密码
 立即注册

QQ登录

只需一步,快速开始

zch

初级会员

28

主题

53

帖子

237

积分

初级会员

积分
237
QQ

[处理中] 多线程操作

zch
初级会员   /  发表于:2021-12-2 10:03  /   查看:2509  /  回复:2
目前我有10个sheetview对象,我想并行操作这些sheetview对象,对象之间毫无关系,我使用task多任务去执行操作,但是会抛出异常,到底支不支持多线程?

2 个回复

倒序浏览
zch
初级会员   /  发表于:2021-12-2 10:04:14
沙发
有没有案列?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-12-2 11:36:30
板凳
本帖最后由 Richard.Ma 于 2021-12-2 12:20 编辑

用下面的代码进行了多线程测试,没有能重现你说的问题,请上传一个demo来重现问题,


  1.             Task creatsheet = new Task(() => {
  2.                 Console.WriteLine("start");
  3.                 SheetView sheet = new SheetView();
  4.                 sheet.Rows.Count = 3000;
  5.                 sheet.Columns.Count = 300;
  6.                 Random rnd = new Random();
  7.                 for (int r = 0; r < 3000; r++)
  8.                 {
  9.                     for (int c = 0; c < 300; c++)
  10.                     {
  11.                         sheet.SetValue(r, c, rnd.Next(r - c, r + c));
  12.                     }
  13.                 }
  14.                 var filename= Environment.CurrentDirectory + "\" + DateTime.Now.ToString("hh-mm-ss.fff") + ".txt";
  15.                 sheet.SaveTextFile(filename,true );
  16.                 Console.WriteLine("complete");
  17.             });
复制代码


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部