繁体   English   中英

什么是获得TimeSpan的倍数的最佳方法

[英]What is the best way to get a multiple of a TimeSpan

程序中有一个操作比另一个操作要花费'n'倍的时间(因此我需要等待'n'倍的时间才能失败)。 其他操作的超时保存为TimeSpan。 如何获取(OtherOperation.TimeSpan *'n')?

您可以考虑编写扩展方法,例如:

public static class TimeSpanEx
{
    public static TimeSpan MultiplyBy (this TimeSpan t, int multiplier)
    {
        return new TimeSpan(t.Ticks * multiplier);
    }
}

现在您可以简单地致电:

TimeSpan result = yourtimespan.MultiplyBy(3);

顺便说一句,如果只是可以在扩展方法中重载*运算符,那将是非常不错的选择,但这目前是不可能的

我们在说.net吗?

如果是这样,请使用timepan.frommilliseconds创建一个新的时间跨度,并将原始.totalmilliseconds值乘以您的常数。

希望能有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM