Class ProcessorSettings

Class ProcessorSettings

Namespace: Aspose.BarCode.Common
Assembly: Aspose.BarCode.dll (25.1.0)

ProcessorSettings permite reconhecer códigos de barras com aumento de desempenho em multi-thread

public class ProcessorSettings

Herança

objectProcessorSettings

Membros Herdados

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Exemplos

Este exemplo mostra como usar ProcessorSettings para adicionar desempenho máximo em multi-thread

int workerThreads = Environment.ProcessorCount * 2;
int portThreads = Environment.ProcessorCount * 2;
System.Threading.ThreadPool.GetMinThreads(out workerThreads, out portThreads);
System.Threading.ThreadPool.SetMinThreads(Math.Max(workerThreads, Environment.ProcessorCount* 2), portThreads);
System.Threading.ThreadPool.GetMaxThreads(out workerThreads, out portThreads);
System.Threading.ThreadPool.SetMaxThreads(Math.Max(workerThreads, Environment.ProcessorCount* 4), portThreads);
BarCodeReader.ProcessorSettings.MaxAdditionalAllowedThreads = Environment.ProcessorCount* 2;

//isso permite usar todos os núcleos para uma única chamada do BarCodeReader
BarCodeReader.ProcessorSettings.UseAllCores = true;
//isso permite usar a contagem atual de núcleos
BarCodeReader.ProcessorSettings.UseAllCores = false;
BarCodeReader.ProcessorSettings.UseOnlyThisCoresCount = Math.Max(1, Environment.ProcessorCount / 2);
Dim workerThreads As Integer = Environment.ProcessorCount * 2
Dim portThreads As Integer = Environment.ProcessorCount * 2
System.Threading.ThreadPool.GetMinThreads(workerThreads, portThreads)
System.Threading.ThreadPool.SetMinThreads(Math.Max(workerThreads, Environment.ProcessorCount* 2), portThreads)
System.Threading.ThreadPool.GetMaxThreads(workerThreads, portThreads)
System.Threading.ThreadPool.SetMaxThreads(Math.Max(workerThreads, Environment.ProcessorCount* 4), portThreads)
BarCodeReader.ProcessorSettings.MaxAdditionalAllowedThreads = Environment.ProcessorCount* 2

'isso permite usar todos os núcleos para uma única chamada do BarCodeReader
BarCodeReader.ProcessorSettings.UseAllCores = True
'isso permite usar a contagem atual de núcleos
BarCodeReader.ProcessorSettings.UseAllCores = False
BarCodeReader.ProcessorSettings.UseOnlyThisCoresCount = Math.Max(1, Environment.ProcessorCount / 2)

Propriedades

MaxAdditionalAllowedThreads

Especifica o número máximo de threads adicionais para executar código em paralelo

public int MaxAdditionalAllowedThreads { get; set; }

Valor da Propriedade

int

Exemplos

BarCodeReader.ProcessorSettings.MaxAdditionalAllowedThreads = Environment.ProcessorCount * 2;
BarCodeReader.ProcessorSettings.MaxAdditionalAllowedThreads = Environment.ProcessorCount * 2

UseAllCores

É necessário usar todos os núcleos.

public bool UseAllCores { get; set; }

Valor da Propriedade

bool

Exemplos

BarCodeReader.ProcessorSettings.UseAllCores = true;
BarCodeReader.ProcessorSettings.UseAllCores = True

UseOnlyThisCoresCount

Especifica o número de núcleos a serem utilizados. É necessário alterar a propriedade “UseAllCores” para “false”.

public int UseOnlyThisCoresCount { get; set; }

Valor da Propriedade

int

Exemplos

BarCodeReader.ProcessorSettings.UseAllCores = false;
BarCodeReader.ProcessorSettings.UseOnlyThisCoresCount = Math.Max(1, Environment.ProcessorCount / 2);
BarCodeReader.ProcessorSettings.UseAllCores = False
BarCodeReader.ProcessorSettings.UseOnlyThisCoresCount = Math.Max(1, Environment.ProcessorCount / 2)
 Português