IRONSOFTWAREHOME

Faute de segmentation sur AWS Lambda

Curtis Chau
Curtis Chau
Updated: 29 juin 2026

Lors de l'utilisation d'AWS Lambda dans un conteneur Linux et de l'appel de la méthode de rendu de manière concurrente de nombreuses fois, cela provoque parfois l'exception suivante.

Exception :
Erreur : l'exécution s'est arrêtée avec l'erreur : signal : erreur de segmentation Runtime.ExitError
Text

Solutions

La solution consiste à appeler la méthode GC.Collect après que le document PDF ait été rendu. Ce problème a été signalé sur Amazon Linux 2023 avec les versions récentes d'IronPDF ; les déploiements antérieurs utilisant .NET 6 et Amazon Linux 2 ne sont pas affectés.

// Create an instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render the HTML string to a PDF document
PdfDocument document = renderer.RenderHtmlAsPdf(htmlString);

// Explicitly trigger garbage collection to help manage memory usage
GC.Collect();

Rendu multi-processus et erreurs wstring_convert::from_bytes

Si GC.Collect() ne résout pas le problème, la cause principale peut être le rendu multi-processus ou la réutilisation globale de ChromePdfRenderer dans le conteneur Lambda. Cela produit soit une faute de segmentation, soit une exception C++ :

Process runtime-1 exited: signal: segmentation fault
Error while generating PDF from HTML: 'wstring_convert::from_bytes'
Text

Ces erreurs sont intermittentes et peuvent n'apparaître qu'après la première ou la deuxième invocation du conteneur Lambda.

Solution

Définissez Installation.SingleProcess = true, redirigez les chemins vers /tmp, et créez un nouveau ChromePdfRenderer par invocation :

IronPdf.Installation.SingleProcess = true;
IronPdf.Installation.TempFolderPath = "/tmp";

var renderer = new ChromePdfRenderer();
var pdf = await renderer.RenderHtmlAsPdfAsync(htmlString);

Ne pas appeler Installation.Initialize() et ne pas maintenir un ChromePdfRenderer comme instance statique ou au niveau du champ. Un moteur de rendu persistant porte un état mémoire obsolète dans les invocations Lambda suivantes, provoquant le plantage.

// Avoid: global renderer reuse
private readonly ChromePdfRenderer _renderer = new();

// Avoid: calling Initialize()
Installation.Initialize();
Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.

...
Lire la suite

Prêt à commencer ?

Nuget Downloads 21,105,021Version :2026.9vient de sortir

Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez « IronPDF »
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez l'installateur Windows ici.

  1. Téléchargez et décompressez IronPDF à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans l'explorateur de solutions Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, « IronPDF.dll »

Licences à partir de 749 $

Vous avez une question ? Contactez notre équipe de développement.

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

OR
bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez « IronPDF »
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez l'installateur Windows ici.

  1. Téléchargez et décompressez IronPDF à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans l'explorateur de solutions Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, « IronPDF.dll »

Licences à partir de 749 $