Skip to content

Parallelized executions with Task.Run(...) might fail #8

@jochenwezel

Description

@jochenwezel

ToDos

  • Add unit test AddFileLinksWithSpecialCenterDeviceBehaviour_Parallelized in DirectoriesExtendedTest.vb (with Ignore() attribute)
  • Solve issue
  • Remove Ignore() attribute from unit test

Sample code causing issues

Pre-condition: the directories must exist before running code below

Dim CleanupTasks As New ParallelTasksBundle()
CleanupTasks.Add(Task.Run(Sub() Me.RemoveRemoteTestFolder(RemoteTestFolderNameSrc, False)))
CleanupTasks.Add(Task.Run(Sub() Me.RemoveRemoteTestFolder(RemoteTestFolderNameDestCollection, False)))
CleanupTasks.WaitAll()

Dim CreateDirsLevel1 As New ParallelTasksBundle
Dim RemoteTestDirSrc As Task(Of IO.DirectoryInfo) = CleanupTasks.Add(Task.Run(Function() Me.CreateRemoteTestFolderIfNotExisting(RemoteTestFolderNameSrc)))
Dim RemoteTestDirDestCollection As Task(Of IO.DirectoryInfo) = CleanupTasks.Add(Task.Run(Function() Me.CreateRemoteTestFolderIfNotExisting(RemoteTestFolderNameDestCollection)))
CreateDirsLevel1.WaitAll()

Dim CreateDirsLevel2 As New ParallelTasksBundle
Dim RemoteTestDirDestFolder1 As Task(Of IO.DirectoryInfo) = CleanupTasks.Add(Task.Run(Function() Me.CreateRemoteTestFolderIfNotExisting(RemoteTestFolderNameDestFolder1)))
Dim RemoteTestDirDestFolder2 As Task(Of IO.DirectoryInfo) = CleanupTasks.Add(Task.Run(Function() Me.CreateRemoteTestFolderIfNotExisting(RemoteTestFolderNameDestFolder2)))
CreateDirsLevel2.WaitAll()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions