{"id":13731064,"url":"https://github.com/mzboray/HighPrecisionTimer","last_synced_at":"2025-05-08T03:32:49.584Z","repository":{"id":61214505,"uuid":"65002434","full_name":"mzboray/HighPrecisionTimer","owner":"mzboray","description":"A high precision timer in .NET","archived":false,"fork":false,"pushed_at":"2016-12-29T04:56:26.000Z","size":12,"stargazers_count":54,"open_issues_count":1,"forks_count":6,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-08-04T02:09:55.718Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mzboray.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-08-05T08:29:07.000Z","updated_at":"2024-07-15T11:32:55.000Z","dependencies_parsed_at":"2022-10-12T22:23:06.004Z","dependency_job_id":null,"html_url":"https://github.com/mzboray/HighPrecisionTimer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mzboray%2FHighPrecisionTimer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mzboray%2FHighPrecisionTimer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mzboray%2FHighPrecisionTimer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mzboray%2FHighPrecisionTimer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mzboray","download_url":"https://codeload.github.com/mzboray/HighPrecisionTimer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224695886,"owners_count":17354506,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T02:01:23.426Z","updated_at":"2024-11-14T21:32:06.308Z","avatar_url":"https://github.com/mzboray.png","language":"C#","readme":"# HighPrecisionTimer\nA high precision timer in .NET\n\nThere are often times where people would like regularly spaced events at a resolution greater than C# and Windows \ncan normally provide (~15ms). This is a limitation of the standard timer mechanisms built into the Windows OS. \nThere do exist high precision timing APIs for multimedia applications, but these are not exposed via .NET APIs.\nFor applications that need timer event precision on the order of 1ms, these APIs are useful. This library is a quick \nexample of using the [Multimedia Timer API](http://msdn.microsoft.com/en-us/library/windows/desktop/dd743609(v=vs.85).aspx).\n\nI will note that this API changes system wide settings that can degrade system performance (esp battery life), so buyer \nbeware. Since Windows is not a real-time OS, the load on your system may cause the MM timer be delayed resulting \nin gaps of 100 ms that contain 100 events in quick succession, rather than 100 events spaced 1 ms apart. \nSome additional reading on [MM timers](https://blogs.msdn.microsoft.com/mediasdkstuff/2009/07/02/why-are-the-multimedia-timer-apis-timesetevent-not-as-accurate-as-i-would-expect/).\n\nI originally posted the code as an [answer](http://stackoverflow.com/a/24843946/517852) to a question on Stack Overflow","funding_links":[],"categories":["C#"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmzboray%2FHighPrecisionTimer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmzboray%2FHighPrecisionTimer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmzboray%2FHighPrecisionTimer/lists"}