아마도이 코드는 중복입니다. (그러나 Parallel.Foreach에서 binnaryformatter를 사용하는 샘플 코드를 찾지 못했습니다. 누구든지 샘플을 제공 할 수 있습니까? 샘플 문제의 코드Parallel.ForEach의 이진 직렬화/비 직렬화 (BinaryFormatter)
Parralel.ForEach(files, fileCurr=>
{
using(lib.Accesser("fileType", fileNameSpec))
{
LoadFileData(fileNameSpec,fileCurr,cancellationToken, progressCallback);
}
});
and
LoadFileData(fileNameSpec,fileCurr,cancellationToken, progressCallback)
{
using(lib2.load(fileCurr.name))
{
foreach(var v in fileCurr.include)
{
var objectForSerialization = loadObj(v);
//my code goes below
System.IO.Stream stream = System.IO.File.Open("J:\\volume", FileMode.OpenOrCreate);
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter bformatter = new BinaryFormatter();
bformatter.Serialize(stream, objectForSerialization);
stream.Close();
//but this fil will be locked by multyply writes
}
}
}
병렬 처리에서 serialization 및/또는 deserialisation이 문제가되는 이유가 있습니까? 예를 들어 동일한 처리 대기열에있는 다른 개체의 속성에 종속되어 있습니까? 무엇을 시도 했습니까? 몇 가지 예제 코드를 볼 수 있습니까? –
어디에 문제가 있습니까? 어떤 예외? serialize (xx)와 같은 Methode에 직렬화 코드를 넣고 병렬 forearch에서 thius를 호출하십시오. 그냥 리소스가 없다는 것을 확인하십시오. –
다중 형식으로 파일에 글을 씁니다. (간단한 샘플을 읽고 쓰는 방법을 묻습니다. – curiousity