Các bạn đăng ký theo dõi ủng hô kênh nhé, cảm ơn các bạn kzbin.info
@LearningEverything10014 ай бұрын
Video tuy chỉ 43p, nhưng để những người mới học c# như mình hiểu được thì phải mất gấp mấy lần số 43p đó, kiến thức rất cô đọng và dễ hiểu nhưng để xem đến đâu hiểu luôn đến đó thì mình nghĩ rất ít người làm được như vậy, mình vừa xem vừa tua lại và ngẫm nghĩ từng câu nói của XuanThuLab mới hiểu và xem tiếp.
@NghĩaNguyễnĐức-q8e Жыл бұрын
Dễ hiểu quá a ạ , em cảm ơn a.
@nghi71605 ай бұрын
Cảm ơn kênh bài giảng rất bổ ích
@ThanhHoang-dm5wk3 жыл бұрын
Rất cảm ơn kênh làm video rất dễ hiểu. cảm ơn bạn rất nhiều
@ovantuan84063 жыл бұрын
Anh giảng hay quá
@bangthanh9563 жыл бұрын
Video rất hay và dễ hiểu, 1 video tương đương mấy giờ search google :)) cám ơn AD rất nhiều :D
@Administrations Жыл бұрын
Anh dạy quá hay luôn😊
@leethai983 жыл бұрын
Cảm ơn AD rất rất nhiều
@cuoi1233 жыл бұрын
hay quá bác, cám ơn bác
@z2hteam1473 жыл бұрын
Tutorial đúng, nhưng chưa đủ. TH này chạy trên Console, nó ko quan tâm đến thread UI. Bác nên bổ sung trường hợp chạy trên UI, khi lấy kết quả của 1 task, chúng ta không nên dùng task.Result, mà phải đợi task hoàn thành mới trả kết quả task.ConfigureAwait(false) Khuyến nghị nên dùng Task.WhenAll thay cho Task.WaitAll
@okebanei2 жыл бұрын
task.configureAwait(false) là gì bác ơi
@18.tranquangminhuc49 Жыл бұрын
@@okebanei cái đó giúp bạn cải thiện hiệu suất á
@mcfunhappy5552 Жыл бұрын
cảm ơn sư phụ, đệ tử đã giác ngộ Async & Wait, đợi tu luyện thêm vài bộ chân kinh DotNet là có thể phi thăng thành Senior rồi :>>
@SonChuVan-f9y11 ай бұрын
em trình itern thì có nên học không ạ? hay ưu tiên những j đơn giản trước, cày đến đây rồi mà thấy a nói sợ quá:((
@mcfunhappy555211 ай бұрын
@@SonChuVan-f9y uây bro cái này quan trọng đó, học sớm chứ đừng next nha
@DoanQuangThangQP9 ай бұрын
@@SonChuVan-f9y bạn học đến dâu rồi bạn, mình cũng intern mới học tới đây, mình cùng học được k bạn
@LAnNguyen-ie8ix20 сағат бұрын
@@SonChuVan-f9y mk intern cung dag cay a len fresher chua a
@NHGeneral3 жыл бұрын
Bài này hay quá!!!
@ddthon Жыл бұрын
thay day de hieu gia lun
@MinhQuanCt33 жыл бұрын
hay quá a.
@dxlaam0043 жыл бұрын
Hay qua anh
@monkeydluffy923 жыл бұрын
Áp dụng cho Winform load Gridview thì như thế nào bác ^^ Ví dụ vừa load vừa hiển thị gridview
@nghiaphanthanh22042 жыл бұрын
thầy cho em hỏi tại sao return về task ngay lúc await thì không ảnh hưởng đến thread chính ạ
@HOA-NGUYEN-DEV2 жыл бұрын
Cám ơn XuanThuLab.Như trong video anh có trình bày , khi call await thì sẽ trả về cho main thread , trường hợp muốn call nhiều await liên tục thì làm như thế nào a?
@anajito20233 жыл бұрын
Thanks ad ạ
@nothingnothing643 жыл бұрын
[KLQ] Cho em hỏi em có source .net có xài (.net standard vs net5.0) nhưng không biết run trên MacOS có ổn k ạ? Vì mình k xài .net framework và MacOs đã hỗ trợ .net. Em thấy clip thì a xài macos để code .net trên VS code. (Do em muốn mua macbook để code .net & flutter).
@uctaiphan79503 жыл бұрын
hi bác, bác đang đi làm với C# hả, mảng nào vậy bác ?
@Vimax02087 ай бұрын
em có 1 thắc mắc là nếu Async-await nhằm mục đích tạo ra các phương thức bất đồng bộ và chạy trên 1 thread riêng, nó có các tác vụ chờ nhưng không làm gián đoạn thread chính. Thì tại sao lại không tạo luôn Thread t = new Thread(..) để chạy mà cần Async - await. Mọi người giải thích giúp em vs ạ.
@tienn-f3w3 ай бұрын
"Async-await nhằm mục đích tạo ra các phương thức bất đồng bộ và chạy trên 1 thread riêng" => sai - Async await chỉ là non-blocking (không chặn), giúp không phải chờ đợi vô nghĩa, thread sẽ được quản lý tự động "sao lại không tạo luôn Thread t = new Thread(..) " - Quản lý thread khó, số lượng thread quá nhiều => có khả năng bị treo app - Vì mỗi luồng thực hiện 1 nhiệm vụ => khó share data, dễ gây xung đột dữ liệu (2 thread cùng đọc 1 dữ liệu => có thể lỗi, 2 thread cùng sửa 1 dữ liệu => kết quả sai, xung đột điều khiển (ví dụ rõ nhất là singleton))
@laptrinhwindowsform3 жыл бұрын
Anh cho em hỏi: nếu có nhiều task muốn sử dụng vòng lặp và truyền tham số cho task để start, chứ không khai báo thủ công thì làm sao?
@XuanThuLab3 жыл бұрын
Anh không hiểu rõ ý của em, tuy nhiên để truyền tham số phức tạp cho Task có thể sử dụng kiểu vô danh chứa nhiều trường dữ liệu xuanthulab.net/kieu-vo-danh-va-kieu-dong-dynamic-trong-c-c-sharp.html var parameters = new { thamso1 = 1, thamso2 = "dfdsf" }; Task task = new Task((dynamic thamso) => { var thamso1 = thamso.thamso1; var thamso2 = thamso.thamso2; }, parameters);
@dungngotien44843 жыл бұрын
Cảm ơn bác! Video rất chi tiết và dễ hiểu. Bác cho em hỏi có cách nào ngừng 1 task khi nó đang thực hiện không ạ ?
Em đã xem video này khoảng 10 lần và em đã lập trình được async task như trong video. Em lập trình c# điều khiển giả lập Android các lệnh em xài chủ yếu là Image Search. Em cũng sử dụng async task để chạy nhiều tác vụ. Khi chạy với số ít giả lập (15 trở lại) thì có vẻ ok và không báo lỗi gì , nhưng khi chạy nhiều giả lập thì sẽ báo lỗi: Object is currently in use elsewhere Em đã thử dùng lock(){ } nhưng hiệu suất giảm đi rất nhiều (chỉ còn khoảng 20%) ạ. Anh có thể giúp em giải quyết vấn đề này không ạ. Em cảm ơn anh! Mong anh chị nào đi ngang qua cho em ý kiến để giải quyết vấn đề hoặc chỉ chỗ cho em tìm câu trả lời với ạ.
@cuoi123 Жыл бұрын
1 năm rồi, giải quyết đc chưa bạn, share cho ae với =))
@nguyenvanmanh35693 жыл бұрын
Anh có thể giải thích sự khác nhau, ưu điểm, nhược điểm của async vs parallel không ạ ? Em cảm ơn anh.
@hungtran-uq4jk Жыл бұрын
2 cai nay khac nhau hoan toan sao ma so sanh duoc ban.
@hungtran-uq4jk Жыл бұрын
vi du ban so sanh: multi thread va multi process thi ok vi no cung huong den giai quyet cung 1 van de.
@studyandentertainment5813 жыл бұрын
Em chào mọi người, em đang học về async_await trong C#, em đang muốn gọi hai hàm async chạy song song với nhau và đây là code của em: using System; using System.Threading; using System.Threading.Tasks; namespace async_await { class Program { public static async Task PrinColor(int seconds, string mgs, ConsoleColor color) { //int a = 123; Console.ForegroundColor = color; Console.WriteLine($"{mgs,10}.... Start"); Console.ResetColor(); for (int i = 0; i < seconds; i++) { Console.ForegroundColor = color; Console.WriteLine($"{mgs,10} {i,2}"); Console.ResetColor(); Thread.Sleep(1000); } Console.ForegroundColor = color; Console.WriteLine($"{mgs,10}.... End"); Console.ResetColor(); int a = await num(); return a; } public static async Task num() { return 5; } static async Task Main(string[] args) { int number = 10; // Console.WriteLine("Truowsc" + number); Task a = PrinColor(5, "T1", ConsoleColor.Magenta); Task b = PrinColor(15, "T2", ConsoleColor.Green); var kq = await a; var kq1 = await b; // Console.WriteLine("Sau" + number); } } } Em không hiểu vì sao mà nó vẫn chạy đồng bộ từ Tast T1, T2 trong khi em đã để làm hàm async. Mong mọi người dành thời gian giúp em ạ! Em cảm ơn rất nhiều!!!
@utxitrum95782 жыл бұрын
đây nè em thêm chỗ này nhé await Task.Run(() => { for (int i = 0; i < seconds; i++) { Console.ForegroundColor = color; Console.WriteLine($"{mgs,10} {i,2}"); Console.ResetColor(); Thread.Sleep(1000); } });
@mcfunhappy5552 Жыл бұрын
@@utxitrum9578 sao phải thêm await Task Run thì nó mới ko đồng bộ vậy a, e tưởng class Async là nó k đồng bộ rồi chứ