草庐IT

my_timer_callback

全部标签

c# - System.Timers.Timer 是否在独立线程中运行?

我试图了解System.Timers.Timer引发elapsed事件的时间,它是在独立线程中引发的吗?我下面的例子似乎表明三个计时器在它们自己的线程中独立运行:classProgram{staticSystem.Timers.Timertimer=newSystem.Timers.Timer();staticSystem.Timers.Timertimer2=newSystem.Timers.Timer();staticSystem.Timers.Timertimer3=newSystem.Timers.Timer();staticvoidMain(string[]args){tim

C# - System.Timers.Timer 的替代方案,在特定时间调用函数

我想在特定时间调用我的C#应用程序中的特定函数。起初我想到了使用Timer(System.Time.Timer),但很快就无法使用了。为什么?简单。Timer类需要以毫秒为单位的Interval,但考虑到我可能希望函数被执行,假设在一周内执行,这意味着:7天=168小时;168小时=10,080分钟;10,080分钟=604,800秒;604,800秒=604,800,000毫秒;所以间隔为604,800,000;现在让我们记住Interval接受的数据类型是int,我们知道int范围从-2,147,483,648到2,147,483,647。这使得Timer无用,不是在这种情况下,而

C# - System.Timers.Timer 的替代方案,在特定时间调用函数

我想在特定时间调用我的C#应用程序中的特定函数。起初我想到了使用Timer(System.Time.Timer),但很快就无法使用了。为什么?简单。Timer类需要以毫秒为单位的Interval,但考虑到我可能希望函数被执行,假设在一周内执行,这意味着:7天=168小时;168小时=10,080分钟;10,080分钟=604,800秒;604,800秒=604,800,000毫秒;所以间隔为604,800,000;现在让我们记住Interval接受的数据类型是int,我们知道int范围从-2,147,483,648到2,147,483,647。这使得Timer无用,不是在这种情况下,而

c# - System.Timers.Timer 与 System.Threading.Timer 的线程安全

在本文中:http://msdn.microsoft.com/en-us/magazine/cc164015.aspx作者声明System.Threading.Timer不是线程安全的。从那时起,这在博客上、Richter的书“CLRviaC#”和SO中都重复了这一点,但这从来没有被证明是合理的。此外MSDNdocumentation确保“这种类型是线程安全的。”1)谁说的是真话?2)如果这是原始文章,是什么让System.Threading.Timer不是线程安全的,以及它的包装器System.Timers.Timer如何实现更多的线程安全?谢谢 最佳答案

c# - System.Timers.Timer 与 System.Threading.Timer 的线程安全

在本文中:http://msdn.microsoft.com/en-us/magazine/cc164015.aspx作者声明System.Threading.Timer不是线程安全的。从那时起,这在博客上、Richter的书“CLRviaC#”和SO中都重复了这一点,但这从来没有被证明是合理的。此外MSDNdocumentation确保“这种类型是线程安全的。”1)谁说的是真话?2)如果这是原始文章,是什么让System.Threading.Timer不是线程安全的,以及它的包装器System.Timers.Timer如何实现更多的线程安全?谢谢 最佳答案

c# - 谷歌+ API : How can I use RefreshTokens to avoid requesting access every time my app launches?

我正在尝试使用Google+API访问经过身份验证的用户的信息。我从其中一个示例中复制了一些代码,效果很好(如下),但是我无法以一种可以跨应用程序启动重用token的方式使其工作。我trycatch“RefreshToken”属性并使用provider.RefreshToken()(除其他事项外),并且总是收到400BadRequest响应。有谁知道如何进行这项工作,或者知道我在哪里可以找到一些示例?GoogleCodesite似乎没有涵盖这个:-(classProgram{privateconststringScope="https://www.googleapis.com/auth

c# - 谷歌+ API : How can I use RefreshTokens to avoid requesting access every time my app launches?

我正在尝试使用Google+API访问经过身份验证的用户的信息。我从其中一个示例中复制了一些代码,效果很好(如下),但是我无法以一种可以跨应用程序启动重用token的方式使其工作。我trycatch“RefreshToken”属性并使用provider.RefreshToken()(除其他事项外),并且总是收到400BadRequest响应。有谁知道如何进行这项工作,或者知道我在哪里可以找到一些示例?GoogleCodesite似乎没有涵盖这个:-(classProgram{privateconststringScope="https://www.googleapis.com/auth

c# - 在 C#7 中,如何将 "roll my own"类任务类型与异步一起使用?

C#7中鲜为人知的特性之一是“通用异步返回类型”,Microsoft将其描述为:从异步方法返回任务对象可能会在某些路径中引入性能瓶颈。Task是一个引用类型,所以使用它意味着分配一个对象。在使用async修饰符声明的方法返回缓存结果或同步完成的情况下,额外的分配可能会成为代码性能关键部分的重要时间成本。如果这些分配发生在紧密循环中,成本可能会变得非常高。新的语言特性意味着异步方法可以返回除Task之外的其他类型。,Task和void.返回的类型仍必须满足异步模式,这意味着GetAwaiter方法必须可访问。作为一个具体示例,ValueTask类型已添加到.NET框架中以利用这一新语言功

c# - 在 C#7 中,如何将 "roll my own"类任务类型与异步一起使用?

C#7中鲜为人知的特性之一是“通用异步返回类型”,Microsoft将其描述为:从异步方法返回任务对象可能会在某些路径中引入性能瓶颈。Task是一个引用类型,所以使用它意味着分配一个对象。在使用async修饰符声明的方法返回缓存结果或同步完成的情况下,额外的分配可能会成为代码性能关键部分的重要时间成本。如果这些分配发生在紧密循环中,成本可能会变得非常高。新的语言特性意味着异步方法可以返回除Task之外的其他类型。,Task和void.返回的类型仍必须满足异步模式,这意味着GetAwaiter方法必须可访问。作为一个具体示例,ValueTask类型已添加到.NET框架中以利用这一新语言功

c# - 编译器错误消息 : CS0246: when I renamed my project

我重命名了我的项目并且它之前可以编译但是当我进行一些更改时它由于某种原因停止工作错误是CompilerErrorMessage:CS0246:Thetypeornamespacename'Lab4'couldnotbefound(areyoumissingausingdirectiveoranassemblyreference?)我从Lab4的模板新建了一个项目,按照这里的步骤重命名为lab5http://petermcintyre.com/topics/using-an-app-as-a-template-asp-net-mvc/我找到了源文件Line28:usingLab4;Lin