ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
プログラミング言語の広大な風景の中で、C#は、デスクトップアプリケーションからウェブやモバイルアプリケーションに至るまで、さまざまなアプリケーションの開発に使用される多用途で強力な言語として際立っています。 C#が開発者の間で人気がある理由の一つは、多くのライブラリやクラスが豊富に揃っていることです。これにより、さまざまなプログラミングの課題に対する解決策が提供されます。 これらの中で、 ストップウォッチクラス 正確な時間測定、プロファイリング、およびパフォーマンス分析における役割で特別な位置を占めています。
この記事では、C#のStopwatchオブジェクトを使用して特定のタスクを実行するのに要した時間をpublicのTimeSpan Elapsedプロパティを利用して計測する方法を見ていきます。 また、PDFの作成にかかる総経過時間を計測します。 IronPDF C#.
Stopwatch
クラスはC#のSystem.Diagnostics
名前空間の一部であり、高精度で経過時間を測定するためのシンプルで効率的な方法を提供します。 これは、.NET Framework に導入されており、コードセグメントの実行時間の追跡、パフォーマンスの最適化、およびアプリケーションのプロファイリングにおいて、開発者にとって貴重なツールとなっています。
Stopwatch
クラスの使用は簡単です。 使用を開始するには、まず Stopwatch
クラスの新しいインスタンスを作成する必要があります:
using System.Diagnostics;
class Program
{
static void Main()
{
Stopwatch stopwatch = new Stopwatch(); // Stopwatch object
}
}
using System.Diagnostics;
class Program
{
static void Main()
{
Stopwatch stopwatch = new Stopwatch(); // Stopwatch object
}
}
Imports System.Diagnostics
Friend Class Program
Shared Sub Main()
Dim stopwatch As New Stopwatch() ' Stopwatch object
End Sub
End Class
Stopwatch
インスタンスが作成されたら、ストップウォッチを開始および停止して経過時間を測定できます。
stopwatch.Start();
Console.WriteLine("It will measure the time between start and stop");
stopwatch.Stop(); // Stop measuring elapsed time
stopwatch.Start();
Console.WriteLine("It will measure the time between start and stop");
stopwatch.Stop(); // Stop measuring elapsed time
stopwatch.Start()
Console.WriteLine("It will measure the time between start and stop")
stopwatch.Stop() ' Stop measuring elapsed time
経過時間はElapsed
プロパティを使用して取得できます:
TimeSpan elapsed = stopwatch.Elapsed;
Console.WriteLine($"Elapsed time: {elapsed}");
TimeSpan elapsed = stopwatch.Elapsed;
Console.WriteLine($"Elapsed time: {elapsed}");
Dim elapsed As TimeSpan = stopwatch.Elapsed
Console.WriteLine($"Elapsed time: {elapsed}")
出力:
Stopwatch
クラスは、基本的な時間計測を超えたさまざまな高度な機能を提供します。 これらの機能のいくつかを見てみましょう:
Restart
メソッドは、経過時間を停止し、一度の操作でゼロにリセットする便利な方法です。 複数のコードセグメントの実行時間を計測する際に、新しいStopwatch
インスタンスを作成せずに済むので便利です。
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
Console.WriteLine("The time will restart after executing the below code");
stopwatch.Restart();
stopwatch.Stop();
TimeSpan elapsed = stopwatch.Elapsed;
Console.WriteLine($"Total Elapsed time after Restart: {elapsed}");
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
Console.WriteLine("The time will restart after executing the below code");
stopwatch.Restart();
stopwatch.Stop();
TimeSpan elapsed = stopwatch.Elapsed;
Console.WriteLine($"Total Elapsed time after Restart: {elapsed}");
Dim stopwatch As New Stopwatch()
stopwatch.Start()
Console.WriteLine("The time will restart after executing the below code")
stopwatch.Restart()
stopwatch.Stop()
Dim elapsed As TimeSpan = stopwatch.Elapsed
Console.WriteLine($"Total Elapsed time after Restart: {elapsed}")
出力:
IsHighResolution
プロパティIsHighResolution
プロパティは、経過時間を正確に測定するために、基になるタイミングメカニズムが高解像度パフォーマンスカウンターに基づいているかどうかを示します。このプロパティを確認することは、高解像度のタイミング方法をサポートしていないシステムに対処する場合に役立ちます。
Stopwatch stopwatch = new Stopwatch();
if (Stopwatch.IsHighResolution)
{
Console.WriteLine("High-resolution timing is supported");
}
else
{
Console.WriteLine("Fallback to lower-resolution timing");
}
Stopwatch stopwatch = new Stopwatch();
if (Stopwatch.IsHighResolution)
{
Console.WriteLine("High-resolution timing is supported");
}
else
{
Console.WriteLine("Fallback to lower-resolution timing");
}
Dim stopwatch As New Stopwatch()
If System.Diagnostics.Stopwatch.IsHighResolution Then
Console.WriteLine("High-resolution timing is supported")
Else
Console.WriteLine("Fallback to lower-resolution timing")
End If
出力:
Frequency
プロパティは、1秒あたりのティック数で基礎となるタイマーの周波数を返します。 この値は、経過したティックをミリ秒などの他の時間単位に変換するのに役立ちます。
Stopwatch stopwatch = new Stopwatch();
long frequency = Stopwatch.Frequency;
Console.WriteLine($"Timer Frequency: {frequency} ticks per second");
Stopwatch stopwatch = new Stopwatch();
long frequency = Stopwatch.Frequency;
Console.WriteLine($"Timer Frequency: {frequency} ticks per second");
Dim stopwatch As New Stopwatch()
Dim frequency As Long = System.Diagnostics.Stopwatch.Frequency
Console.WriteLine($"Timer Frequency: {frequency} ticks per second")
出力:
ElapsedTicks
プロパティは、生のティックカウントに直接アクセスすることを提供し、時間単位に変換する必要がありません。 これは、カスタム計算を実行する場合や低レベルのタイミング要件に対処する場合に有益です。
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
// Code segment
long elapsedTicks = stopwatch.ElapsedTicks;
Console.WriteLine($"Elapsed Ticks: {elapsedTicks}");
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
// Code segment
long elapsedTicks = stopwatch.ElapsedTicks;
Console.WriteLine($"Elapsed Ticks: {elapsedTicks}");
Dim stopwatch As New Stopwatch()
stopwatch.Start()
' Code segment
Dim elapsedTicks As Long = stopwatch.ElapsedTicks
Console.WriteLine($"Elapsed Ticks: {elapsedTicks}")
出力:
IronPDFは、開発者が.NETアプリケーション内でPDFドキュメントを簡単に作成、操作、処理できる強力なC#ライブラリです。 HTML、画像、その他の形式からPDFを生成する必要がある場合、IronPDFはC#プロジェクトにシームレスに統合するための包括的なツールセットを提供します。
C#アプリケーションでIronPDFを使用し始めるには、次の簡単な手順に従ってください:
Install-Package IronPdf
あるいは、以下を使用することもできます。 NuGetパッケージウェブサイト "IronPdf" パッケージをダウンロードしてインストールします。
using IronPdf;
using IronPdf;
Imports IronPdf
さて、アプリケーションでIronPDFの機能を活用する準備が整いました。
では、C#のStopwatch
クラスを使用して、IronPDFを使ってURLからPDFを作成するのにかかる時間を測定する方法を示します:
using System;
using System.Diagnostics;
using IronPdf;
class Program
{
static void Main()
{
// Initialize IronPDF
IronPdf.HtmlToPdf Renderer = new IronPdf.HtmlToPdf();
// Specify the URL for PDF generation
string urlToConvert = "https://example.com";
// Use Stopwatch to measure the time taken
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
// Create PDF from URL
PdfDocument PDF = Renderer.RenderUrlAsPdf(urlToConvert);
// Stop measuring elapsed time
stopwatch.Stop();
// Save the generated PDF to a file or perform other actions
PDF.SaveAs("GeneratedPDF.pdf");
// Display the time taken
Console.WriteLine($"Time taken to create PDF from URL: {stopwatch.ElapsedMilliseconds} milliseconds");
}
}
using System;
using System.Diagnostics;
using IronPdf;
class Program
{
static void Main()
{
// Initialize IronPDF
IronPdf.HtmlToPdf Renderer = new IronPdf.HtmlToPdf();
// Specify the URL for PDF generation
string urlToConvert = "https://example.com";
// Use Stopwatch to measure the time taken
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
// Create PDF from URL
PdfDocument PDF = Renderer.RenderUrlAsPdf(urlToConvert);
// Stop measuring elapsed time
stopwatch.Stop();
// Save the generated PDF to a file or perform other actions
PDF.SaveAs("GeneratedPDF.pdf");
// Display the time taken
Console.WriteLine($"Time taken to create PDF from URL: {stopwatch.ElapsedMilliseconds} milliseconds");
}
}
Imports System
Imports System.Diagnostics
Imports IronPdf
Friend Class Program
Shared Sub Main()
' Initialize IronPDF
Dim Renderer As New IronPdf.HtmlToPdf()
' Specify the URL for PDF generation
Dim urlToConvert As String = "https://example.com"
' Use Stopwatch to measure the time taken
Dim stopwatch As New Stopwatch()
stopwatch.Start()
' Create PDF from URL
Dim PDF As PdfDocument = Renderer.RenderUrlAsPdf(urlToConvert)
' Stop measuring elapsed time
stopwatch.Stop()
' Save the generated PDF to a file or perform other actions
PDF.SaveAs("GeneratedPDF.pdf")
' Display the time taken
Console.WriteLine($"Time taken to create PDF from URL: {stopwatch.ElapsedMilliseconds} milliseconds")
End Sub
End Class
この例では、IronPDFを初期化し、HtmlToPdf
クラスを使用して指定されたURLからPDFをレンダリングし、Stopwatch
を使用して所要時間を計測します。 urlToConvert
変数を目的のURLに調整し、アプリケーションのニーズに応じてPDF作成プロセスをさらにカスタマイズできます。
出力:
結論として、C#のStopwatch
クラスは、正確な時間計測とパフォーマンス分析のための重要なツールとして位置づけられており、開発者にコードを最適化し、運用効率を評価する手段を提供します。 その直感的なインターフェースと高度な機能が、多様なタイミング要件に対応するための汎用性を持たせています。 さらに、IronPDFをC#プロジェクトに統合することで、PDFドキュメントの操作における言語の機能が拡張され、PDFの生成、修正、および処理のためのシームレスなソリューションが提供されます。
Stopwatch
を使用して、IronPDFを使ってURLからPDFを作成するのにかかる時間を測定する例は、正確な時間の追跡と高度なライブラリの相乗効果を示しており、アプリケーションパフォーマンスを評価する上での細心のタイミングの重要性を強調しています。 C#のStopwatch
とIronPDFを組み合わせることで、開発者は詳細なタイミングと多様なPDF処理機能を備えた高性能なアプリケーションを構築できます。
IronPDF の機能をテストするための無料体験ライセンスを取得するには、次のページにアクセスしてください。 ライセンスページ. 以下に、URLをPDFに変換するための完全なチュートリアルがあります これ.
9つの .NET API製品 オフィス文書用