Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
Dans le vaste paysage des langages de programmation, C# se distingue comme un langage polyvalent et puissant utilisé pour développer un large éventail d'applications, des ordinateurs de bureau aux applications web et mobiles. L'une des principales caractéristiques qui font de C# l'un des logiciels préférés des développeurs est son riche ensemble de bibliothèques et de classes, qui offrent des solutions à divers problèmes de programmation. Parmi ceux-ci, le Classe de chronomètre occupe une place particulière en raison de son rôle dans la mesure précise du temps, le profilage et l'analyse des performances.
Dans cet article, nous verrons comment utiliser l'objet Stopwatch en C# pour trouver le temps nécessaire à l'exécution d'une tâche spécifique à l'aide de la propriété publique TimeSpan Elapsed. Nous allons également chronométrer le temps total écoulé pour la création du PDF à l'aide de la fonction IronPDF C#.
La classe Stopwatch
fait partie de l'espace de noms System.Diagnostics
en C#, et fournit un moyen simple et efficace de mesurer le temps écoulé avec une grande précision. Il a été introduit avec le Framework .NET et s'est avéré un outil précieux pour les développeurs en ce qui concerne le suivi du temps d'exécution des segments de code, l'optimisation des performances et le profilage des applications.
L'utilisation de la classe Stopwatch
est simple. Pour commencer à l'utiliser, vous devez d'abord créer une nouvelle instance de la classe 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
Une fois l'instance Stopwatch
créée, vous pouvez démarrer et arrêter le chronomètre pour mesurer le temps écoulé :
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
Le temps écoulé peut être obtenu en utilisant la propriété 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}")
Output:
La classe Stopwatch
offre plusieurs fonctions avancées au-delà de la mesure de base du temps. Examinons quelques-unes de ces caractéristiques :
La méthode Restart
est un moyen pratique d'arrêter et de remettre à zéro le temps écoulé en une seule opération. Cela peut être utile pour mesurer le temps d'exécution de plusieurs segments de code sans créer une nouvelle instance 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}")
Output:
IsHighResolution
(haute résolution)La propriété IsHighResolution
indique si le mécanisme de synchronisation sous-jacent est basé sur un compteur de performance à haute résolution pour mesurer avec précision le temps écoulé. La vérification de cette propriété peut s'avérer utile dans le cas de systèmes ne supportant pas les méthodes de chronométrage à haute résolution.
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
Output:
La propriété Frequency
renvoie la fréquence du timer sous-jacent en ticks par seconde. Cette valeur est utile pour convertir les ticks écoulés en d'autres unités de temps, telles que les millisecondes.
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")
Output:
La propriété ElapsedTicks
permet d'accéder directement au nombre de tics brut sans avoir à le convertir en unités de temps. Cela peut s'avérer utile lorsque l'on effectue des calculs personnalisés ou que l'on doit répondre à des exigences de synchronisation de bas niveau.
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}")
Output:
IronPDF est une puissante bibliothèque C# qui permet aux développeurs de créer, manipuler et traiter sans effort des documents PDF dans leurs applications .NET. Que vous ayez besoin de générer des PDF à partir de HTML, d'images ou d'autres formats, IronPDF fournit un ensemble complet d'outils pour une intégration transparente dans vos projets C#.
IronPDF offre la capacité unique de convertir HTML vers PDF, en conservant les mises en page et les styles intacts. Cette fonctionnalité est idéale pour créer des PDF à partir de contenu web, tel que des rapports, des factures ou de la documentation. Vous pouvez convertir des fichiers HTML, des URL et des chaînes HTML en fichiers PDF.
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim renderer = New ChromePdfRenderer()
' 1. Convert HTML String to PDF
Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")
' 2. Convert HTML File to PDF
Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")
' 3. Convert URL to PDF
Dim url = "http://ironpdf.com" ' Specify the URL
Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
pdfFromUrl.SaveAs("URLToPDF.pdf")
End Sub
End Class
Pour commencer à utiliser IronPDF dans votre application C#, suivez ces étapes simples :
Install-Package IronPdf
Vous pouvez également utiliser la fonction Site web du paquet NuGet pour télécharger et installer le paquetage "IronPDF".
using IronPdf;
using IronPdf;
Imports IronPdf
Vous êtes maintenant prêt à exploiter les capacités d'IronPDF dans votre application.
Voyons maintenant comment utiliser la classe Stopwatch
de C# pour mesurer le temps nécessaire à la création d'un PDF à partir d'une URL à l'aide d'IronPDF :
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
Cet exemple initialise IronPDF, utilise la classe HtmlToPdf
pour rendre un PDF à partir d'une URL spécifiée, et mesure le temps pris en utilisant Stopwatch
. Ajustez la variable urlToConvert
avec l'URL désirée, et vous pouvez personnaliser davantage le processus de création de PDF selon les besoins de votre application.
Output:
En conclusion, la classe Stopwatch
en C# est un outil essentiel pour la mesure précise du temps et l'analyse des performances, offrant aux développeurs les moyens d'optimiser le code et d'évaluer l'efficacité opérationnelle. Son interface intuitive et ses fonctions avancées le rendent polyvalent pour répondre à diverses exigences en matière de chronométrage. En outre, l'intégration d'IronPDF dans les projets C# élargit les capacités du langage en matière de manipulation de documents PDF, offrant ainsi une solution transparente pour la génération, la modification et le traitement des PDF.
L'exemple de l'utilisation de Stopwatch
pour mesurer le temps nécessaire à la création d'un PDF à partir d'une URL avec IronPDF illustre la synergie entre le suivi précis du temps et les bibliothèques avancées, soulignant l'importance d'un chronométrage méticuleux dans l'évaluation des performances de l'application. Ensemble, Stopwatch
de C# et IronPDF permettent aux développeurs de créer des applications très performantes avec un timing méticuleux et des capacités polyvalentes de traitement des PDF.
Pour obtenir votre licence d'essai gratuite afin de tester les fonctionnalités d'IronPDF, visitez la page page de licence. Le tutoriel complet sur la conversion d'URL en PDF se trouve à l'adresse suivante ici.
9 produits de l'API .NET pour vos documents de bureau