Announcement

Collapse
No announcement yet.

Dateizugriff über Threads

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Dateizugriff über Threads

    Hallo zusammen,

    ich habe folgendes Problem:
    Ich schreibe derzeit ein Programm, der über 2 Threads in eine Logdatei schreibt.
    Nun habe ich das Problem, dass es zu fehlern kommt wenn beide Threads gleichzeitig versuchen etwas in die Datei zu schreiben.

    Könnt ihr mir weiterhelfen?

    Viele Grüße

    abc

  • #2
    Hallo,

    die Interlocked-Klasse aus dem Namespace System.Threading stellt atomare Operationen für das Hoch- und Herunterzählen einer von mehreren Threads der gleichen Anwendung gemeinsam genutzten Variable (int oder long) bereit, ohne dass ein Overhead durch Sperrobjekte entsteht:

    Code:
    If System.Threading.Interlocked.Increment(iLockCnt) = 1 Then
      ' Die Sperre konnte gesetzt werden
      ' Hier kommt der Zugriff auf die Logdatei...
      ' Die Sperre wird wieder freigegeben
       System.Threading.Interlocked.Decrement(iLockCnt)
    End If
    Der gemeinsam genutzte Sperrzähler iLockCnt stellt somit sicher, dass immer nur ein Thread zur gleichen Zeit auf die Logdatei zugreift.

    Comment

    Working...
    X