0
respostas

Ler Imagem Async

Olá durante o curso esclareci a necessidade de utilizar o async/await, porém fiquei com dúvidas como aplicar em outros casos, por exemplo no:

Caso 1, um procedimento que lê milhares de imagens do disco, a partir de um médoto async que recebe uma List com nomes da imagem e devolve uma List com as imangens em Base64, ir chamando esse código a cada iria resolver

        public static async Task<byte[]> ReadImageBytesAsync(string filepath)
        {
            byte[] imageBytes;
            using (FileStream sourceStream = new FileStream(filepath, FileMode.Open, FileAccess.Read, FileShare.None, 4096, useAsync: true))
            {
                imageBytes = new byte[sourceStream.Length];
                await sourceStream.ReadAsync(imageBytes, 0, (int)sourceStream.Length);
            }

            return imageBytes;

        }
        public static async Task<string> Base64ImageFromPathAsync(string pathImagem)
        {
            var imageBytes = await ReadImageBytesAsync(pathImagem);
            string base64String = Convert.ToBase64String(imageBytes);
            return base64String;
        }

Caso 2, quando utilizo o EntityFramework e irá retornar uma coleção de registros, o EF apresenta métodos como AllAsync, ToAsyncEnumerable. Como devo proceder para poder realmente aproveitar os recursos de processadores da máquina?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software