我想检查以确保我调用的方法在方法只返回Task
而不是返回时返回 void Task<T>
。
我有一个辅助方法,它的签名如下所示:
internal async static Task DrawLeafMidrail(Graphics dc, float totalHeightFeet, List<HorizontalContainer> horizontals, bool showDetails, bool showVerticalDetails)
{
await Task.Run(() =>
{
float y, sl, startX, endX, stileWidth = 0, btmRailPx = 0, leftJmb;
PointF[] points;
List<VerticalContainer> verticals = new List<VerticalContainer>();
List<LineContainer> lines = new List<LineContainer>();
//..code omitted
});
}
我正在调用 Task 的这个辅助方法,例如:
Horizontal.DrawLeafMidrail(
dc, doorPoints.BayRect.Height / Constants.PIXELS_PER_FOOT,
lstHors, ,forDoorDetail).Wait();
请注意,我已.Wait()
附加到调用者的末尾。我只是想确保这是正确的方法,这将产生与调用者调用辅助方法相同的效果,例如:
Task t = Horizontal.DrawLeafMidrail(dc, doorPoints.BayRect.Height / Constants.PIXELS_PER_FOOT, lstHors, i == 0, forDoorDetail);
t.Wait();