Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 23060|Atbildi: 1

[Avots] .net/c# daudzpavedienu tikai lasāmu failu risinājums

[Kopēt saiti]
Publicēts 11.10.2017 15:06:48 | | | |
Neapstrādāts izņēmums: System.AggregateException: radusies viena vai vairākas kļūdas. ---> System.IO.IOException: failu "C:\SyncTemp\Position\Taxi\2017\09\09\Time\0000.dat" izmanto cits process, tāpēc šim failam nevar piekļūt.
   pie System.IO.__Error.WinIOError(Int32 kļūdas kods, virkne varbūtFullPath)
   Sadaļā System.IO.FileStream.Init(Virknes ceļš, FileMode režīms, FileAccess piekļuve, Int32 tiesības, Būla useRights, FileShare koplietošana, Int32 bufferSize, FileOptions opcijas SECURITY_ATTRIBUTES secAttrs, String msgPath, Būla bFromProxy, Būla useLongPath, Būla checkHost)
   Sistēmā System.IO.FileStream: ctor(Virknes ceļš, FileMode režīms, FileAccess piekļuve, FileShare koplietošana)
   System.IO.File.Open(Virknes ceļš, FileMode režīms, FileAccess piekļuve)
   ConsoleApp1.FileReadHelper.SingleFile(String path) atrašanās vieta C:\project\my\TestNet\ConsoleApp1\FileReadHelper.cs: rindas numurs 27
   In ConsoleApp1.FileReadHelper.<>c__DisplayClass3_0. <MultipleFilesAsync>b__0(Virkne x) Pozīcija C:\project\my\TestNet\ConsoleApp1\FileReadHelper.cs: Rindas numurs 68
   Sadaļā System.Threading.Tasks.Parallel.<>c__DisplayClass17_0'1. <ForWorker>b__1()
   Sadaļā System.Threading.Tasks.Task.InnerInvokeWithArg(Uzdevums childTask)
   Sadaļā System.Threading.Tasks.Task.<>c__DisplayClass176_0. <ExecuteSelfReplicating>b__0(Objekts)
   --- Iekšējo izņēmumu steka izsekošanas --- beigas
   Sadaļā System.Threading.Tasks.Task.ThrowIfExceptional(Būla includeTaskCanceledExceptions)
   Sadaļā System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 uzExclusive, ParallelOptions parallelOptions, Action'1 body, Action'2 bodyWithState, Func'4 bodyWithLocal, Func'1 localInit, Action'1 localVisbeidzot)
   In System.Threading.Tasks.Parallel.ForEachWorker[TSource,TLocal](IEnumerable'1 source, ParallelOptions, Action'1 body, Action'2 bodyWithState, Action'3 bodyWithStateAndIndex, Func'4 bodyWithStateAndLocal, Func'5 bodyWithEverything, Func'1 localInit, Action'1 localLastly)
   pie System.Threading.Tasks.Parallel.ForEach[TSource](IEnumerable'1 avots, Action'1 pamatteksts)
   ConsoleApp1.FileReadHelper.MultipleFilesAsync(IEnumerable'1 ceļš) atrašanās vietā C:\project\my\TestNet\ConsoleApp1\FileReadHelper.cs: rindas numurs 66
   Pie ConsoleApp1.Program.Main(String[] argumenti) pozīcijā C:\project\my\TestNet\ConsoleApp1\Program.cs: rindas numurs 73
Lūdzu, nospiediet jebkuru taustiņu, lai turpinātu. . . .




Kļūda ir acīmredzama, tas ir, failam nevar piekļūt, failu nevar lasīt, kas ir izņēmums, kas tiek izmests saskaņā ar daudzpavedienu

Es izlasīju, kā dokuments ir uzrakstīts:

Es iestatīju tikai lasīšanas režīmu, nevis rakstīšanas režīmu, un atklāju, ka vairāku pavedienu laikā joprojām būs kļūda, vai tas nav tikai lasāms?

Ja tas ir tikai lasāms, tai nevajadzētu būt kļūdai

Šķīdums:



Tam vajadzētu lasīt failus tikai lasīšanas režīmā, pārbaudīt to un konstatēt, ka tā nav kļūda, un to pašu failu var lasīt vienlaicīgi vairākos pavedienos




Iepriekšējo:Viena klikšķa pārinstalēšanas apmācības instalēšanas palīgs Viena klikšķa sistēmas asistenta atkārtotas instalēšanas rokasgrāmata
Nākamo:.net/c# faila lasīšanas operācija, lai nolasītu visas faila rindas partijās
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com