public Task<ObservableCollection<WaterFallDataSource2>> InitalrenderSourceandBrush2(int width)
{
Stopwatch w = new Stopwatch();
w.Start();
points3.Clear();
int wavelength = GlobalStorage.BigWaves.Length;
int allRows = wavelength / width;
w.Stop();
Debug.WriteLine("w.ElapsedMilliseconds:" + w.ElapsedMilliseconds);
Debug.WriteLine("allRows:" + allRows);
if (allRows > 0)
{
Parallel.For(0, _pagesize, (lk) =>
{
ObservableCollection<DataPoint3> dataPoints = new ObservableCollection<DataPoint3>();
for (byte j = 0; j < 150; j++)
{
for (short i = 0; i < width; i++)
{
DataPoint3 dataPoint = new DataPoint3() { VariableX = i, VariableY = j };
dataPoint.Type = GetColorIndex2(GlobalStorage.BigWaves[lk * width + i][j]);
dataPoints.Add(dataPoint);
}
}
WaterFallDataSource2 waterFallDataSource = new WaterFallDataSource2();
waterFallDataSource.DataPoints = dataPoints;
waterFallDataSource.BrushInfo = brushes;
waterFallDataSource.Index = lk;
waterFallDataSource.Width = width;
waterFallDataSource.StartTime = BeatWaveDataConversionExtension.WaveDotToDateTime(BeatInfoCache.BeatInfos.ElementAt(lk * width).R).ToString();
points3.Add(waterFallDataSource);
});
return Task.FromResult<ObservableCollection<WaterFallDataSource2>>(points3.OrderBy(p => p.Index).ToObservableCollection<WaterFallDataSource2>());
}
else
{
ObservableCollection<DataPoint3> dataPoints = new ObservableCollection<DataPoint3>();
WaterFallDataSource2 waterFallDataSource = new WaterFallDataSource2();
for (byte j = 0; j < 150; j++)
{
for (short i = 0; i < wavelength; i++)
{
short value = GlobalStorage.BigWaves[i][j];
DataPoint3 dataPoint = new DataPoint3() { VariableX = i, VariableY = j };
dataPoint.Type = GetColorIndex2(value);
dataPoints.Add(dataPoint);
}
}
waterFallDataSource.DataPoints = dataPoints;
waterFallDataSource.BrushInfo = brushes;
waterFallDataSource.Index = 0;
waterFallDataSource.Width = width;
points3.Add(waterFallDataSource);
return Task.FromResult<ObservableCollection<WaterFallDataSource2>>(points3);
}
}

调用

var reuslt = await _stTrendController.InitalrenderSourceandBrush2((int)firstrowgrid.ActualWidth - 27);

c# 将一个长耗时任务改成task的更多相关文章

  1. Cocos2dx 3.1.1 将一个2.X的项目改成3.1版本

    最近在论坛上下载到了一个Cocos2dx的单机跑酷例子, 也不知道是2.x版的, 花了一天时间试着把他改成3.1.1的试试, 现在已经可以顺利编译的, 但是还是有Heap Free的问题,调试了好几天 ...

  2. 把sql server 2000的用户表的所有者改成dbo

    怎么样把sql server 2000的用户表的所有者,改成dbo,而不是用户名. 推荐使用下面介绍的第二种方法,执行以下查询便可以了.sp_configure 'allow updates','1' ...

  3. C# Windows Phone 8 WP8 开发,将WebClient的DownloadStringCompleted事件改成非同步的awiat方法。

    原文:C# Windows Phone 8 WP8 开发,将WebClient的DownloadStringCompleted事件改成非同步的awiat方法. 一般我们在撰写Windows Phone ...

  4. arm指令bne.w改成b,即无条件跳转

    近期逆向一个程序,需要把bne.w改成b,无条件跳转.由于ios逆向不像pc上,可以在od里直接改汇编指令,这篇文章给了我很大的帮助.通过memory write 修改后,验证可行后,再用ultrae ...

  5. wordpress文章链接怎么把默认的别名改成id形式和伪静态设置

    别名默认是文章标题,打不开,改成英文形式可以打开,但这样很不方便,还有可能重复.怎么改成按文章id自动生成相应链接呢 找到设置---固定链接----把默认的日期和名称型改成自定义结构把末尾的%post ...

  6. 关于富文本编辑器—UEditor(java版)的使用,以及如何将UEditor的文件/图片上传路径改成绝对路径

    突然发现好久没写博客了,感觉变懒了,是要让自己养成经常写文章的习惯才行.既可以分享自己的所学,和所想,和大家一起讨论,发现自己的不足的问题. 大家可能经常会用到富文本编辑器,今天我要说的是UEdito ...

  7. Java将一个字符串的首位改为大写后边改为小写的实现,String

    Java将一个字符串的首位改为大写后边改为小写的实现,String 思路: 获取首字母, charAt(0) substring(0,1) 转成大写 toUpperCase() 转大写hellO=== ...

  8. quartz集群 定时任务 改成可配置

    前面的博文中提到的quartz集群方式会有以下缺点: 1.假设配置了3个定时任务,job1,job2,job3,这时数据库里会有3条job相关的记录,如果下次上线要停掉一个定时任务job1,那即使定时 ...

  9. ecshop分类页把分类描述改成FCKeditor编辑器

    最近放一个网站 http://www.macklin.cn/productline/35 有个产品分类页面需要添加分类缩略图和图文的描述 一.首先说下添加分类缩略图的步骤吧 1,依葫芦画瓢,参照的是e ...

随机推荐

  1. [leetcode]29. Divide Two Integers 两整数相除

    Given two integers dividend and divisor, divide two integers without using multiplication, division ...

  2. [leetcode]215. Kth Largest Element in an Array 数组中第k大的元素

    Find the kth largest element in an unsorted array. Note that it is the kth largest element in the so ...

  3. 4-js 函数

    总是有些奇奇怪怪的问题: <div> <p class="productStatus"> <span>成交量 <em>${goods ...

  4. 解决mysql无法远程登陆问题

    解决这个问题的思路: 一.先确定能过3306端口 二.再检查授权Host是否存在 (新授权记得flush privileges;)   一 步骤 1.首先打开mysql的配置文件,找到这句话,注释掉. ...

  5. 解决 listView gridView 与ScrollView嵌套时的冲突

    package com.xqx.fight; import android.app.Activity; import android.os.Bundle; import android.view.Me ...

  6. OpenGLES.Functions.Missing.in.OpenGLES1.x

    转载自: http://maniacdev.com/2009/05/big-list-of-opengl-functions-missing-in-iphone-opengl-es The funct ...

  7. 用Fiddler抓到的报文Content-Type: application/x-www-form-urlencoded,怎样解析?

    抓到的HTTPS请求报文,在报文头中Content-Type: application/x-www-form-urlencoded 报文体为: entrypoint=clientmanagement& ...

  8. DefaultSingletonBeanRegistry

    DefaultSingletonBeanRegistry 这是 DefaultSingletonBeanRegistry 类的体系结构,由一个类一个责任的原则: AliasRegistry : 提供别 ...

  9. jqgrid单元格合并

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx. ...

  10. php-生成数据库设计文档

    在线以及提供下载数据库设计文档 $dbserver = "192.168.128.190:42578"; $dbusername = "root"; $dbpa ...