Để ủng hộ Kteam các bạn có thể tham khảo Source code mẫu tại website Howkteam.com và click quảng cáo để hỗ trợ team có kinh phí duy trì nhé! www.howkteam.vn/course/lap-trinh-winform-co-ban/thread-trong-lap-trinh-c-winform-1304 Nếu bạn thấy bổ ích, đừng quên chia sẻ để lan truyền GIÁO DỤC MIỄN PHÍ đến cộng đồng! Cảm ơn bạn đã luôn đồng hành cùng Kteam
Ngoài 1 luồng tạo riêng để dùng hàm Demo, thì c# có 2 luồng: luồng chạy của hàm Main() và luồng vẽ ra giao diện trên form (UI) à bạn . như vậy tổng cộng có 3 luồng ?
Cái chỗ tại sao lỗi khi nhập tốc độ ở textBox2 ( 24:56 ), đáng ra anh phải ghi là textBox2.Text mới đúng nhưng anh lại ghi textBox1.Text nên nó báo lỗi là phải :"))
Cho mình hỏi xíu, mình code 1 app load dữ liệu từ sql lên 1 data gidview, nhưng khi nó đang load mà mình mở app khác lên thì app mình viết nó bị lỗi not responding . vậy cách xử lý dùng thread như video của bạn có giải quết đc lỗi đó ko ? Thank
Em tìm đc cách dùng invoker để sửa lỗi warring nhưng mà nó sẽ chạy trên thread main chính [Me.Invoke(MI)] có cách nào để dùng trên thread mình tạo ra ko a Private Sub CrossThreadOperation() 'Tạo delegate Dim MI As New MethodInvoker(AddressOf Demo) 'Chạy delegate MI trên thread của Form1 Me.Invoke(MI) End Sub
Anh cho em hỏi chút ạ! Em giờ muốn việt một cái ứng dụng winform có 2 button, 2 button tương ứng với 2 chức năng khác nhau. 2 chức năng này sẽ được đặt lịch chạy trong ngày (Vd 20h và 23h) sau khi nhấn button (button dạng Start - Stop ấy ạ), đến giờ là nó sẽ chạy. Em dùng giải pháp trong video này đã đủ đáp ứng công việc chưa ạ?? Nếu có thể, anh cho em một vài lưu ý về tech được sử dụng để code được ko ạ. Cám ơn anh!
cái giải pháp trong video k đủ sài. nó sẽ có bug trong vài trường hợp. nói chính xác là k tối ưu. thường làm 1 service chạy riêng. nằm ngoài thread rồi. nên ở phạm vi bài này thì giải pháp đó là sài được
Hướng của em là: 1. Lấy list thời gian đã cài đặt 2. Chạy while(true) check time đúng trong list, nếu OK mở new thread call function thực hiện. Chỉ đơn giản vậy thôi ạ :)
Cảm ơn Kteam! Các bạn rất nhiệt huyết. Cách trình bày lôi cuốn và dễ hiểu. Mong các bạn tiếp tục thực hiện nhiều video hữu ích như vậy.
Quá đẳng cấp. W for Kteam
"Ai nhìn ko hiểu ráng chịu" :)))))
Chủ thớt nói khá hay và dễ hiểu, mong là có nhiều bài bổ ích như vậy từ nhóm.
HowKteam đã có tut về sử dụng Invoke chưa ah. Mình thấy trong video các bạn có nhắc tới ở bài khác, m đang muốn học hỏi. Tks HowKTeam
thanks thớt rất nhiều. mình đang cần cái này. tìm mãi mới thấy bài hướng dẫn hay như thế này.
Cảm ơn K team :D
Phải đăng nhập vào để bình luận phát: Anh giảng hay quá :)) buồn cười vl
Em cám ơn anh ạ
Like mạnh
Để ủng hộ Kteam các bạn có thể tham khảo Source code mẫu tại website Howkteam.com và click quảng cáo để hỗ trợ team có kinh phí duy trì nhé!
www.howkteam.vn/course/lap-trinh-winform-co-ban/thread-trong-lap-trinh-c-winform-1304
Nếu bạn thấy bổ ích, đừng quên chia sẻ để lan truyền GIÁO DỤC MIỄN PHÍ đến cộng đồng!
Cảm ơn bạn đã luôn đồng hành cùng Kteam
hay quá, thank nhóm ạ
Đáng ra anh phải dạy cái kỹ thuật dùng invoke và delegate để tránh lỗi cross thread! Cái này rất quan trọng khi xử lý đa luồng trong winform.
Mình có 1 bài riêng về đa luồng đó bạn
@Lâm Vlog website howkteam có bài đa luồng trong c# đó bạn
11:42 em vẫn chưa hiểu lắm, khi thread thì nó chạy cái label1.text thôi chứ thread main có dùng làm gì đâu mà hiện lỗi đó nhỉ
a ơi e tạo 1 cái button để Abort cái Thread đang chạy nhưng ko được thì phải làm sao ạ
Ngoài 1 luồng tạo riêng để dùng hàm Demo, thì c# có 2 luồng: luồng chạy của hàm Main() và luồng vẽ ra giao diện trên form (UI) à bạn . như vậy tổng cộng có 3 luồng ?
đang học coi clip mà cười rung lớp lun
toàn bị mắng vốn vụ này! do mấy thím tự cười mà
Cái lamda expression giống cái arrow function trong Javascript ES6
Cái chỗ tại sao lỗi khi nhập tốc độ ở textBox2 ( 24:56 ), đáng ra anh phải ghi là textBox2.Text mới đúng nhưng anh lại ghi textBox1.Text nên nó báo lỗi là phải :"))
Anh cho e hỏi là khi mình khởi tạo delegate thì cái này n sẽ chạy trong 1 thread mới à a? em không tạo thread
Bài giảng quá hay bạn ơi.
Xem xong bài giải mình có thắc mắc nếu mình muốntruyền một tham số array vào thread thì mình khai báo thế nào vậy bạn.
bạn phải packing nó vào trong 1 object rồi truyền vào. vào trong thread unpacking nó
bài cơ bản về thread ở đâu vậy bạn ơi. Mình xem trong serial cơ bản không thấy. Cảm ơn
ruclips.net/video/5-LV54Ju6-o/видео.html
lambda expression giống với arrow function bên JS phải không ạ?
Chắc z
Cho mình hỏi xíu, mình code 1 app load dữ liệu từ sql lên 1 data gidview, nhưng khi nó đang load mà mình mở app khác lên thì app mình viết nó bị lỗi not responding . vậy cách xử lý dùng thread như video của bạn có giải quết đc lỗi đó ko ? Thank
A mình có thể đưa một app Winform lên Azure ko?
Ở phút 26 textbox bạn đưa vào phải là textbox2 mới đúng bạn đưa nhầm textbox1
Em tìm đc cách dùng invoker để sửa lỗi warring nhưng mà nó sẽ chạy trên thread main chính [Me.Invoke(MI)] có cách nào để dùng trên thread mình tạo ra ko a
Private Sub CrossThreadOperation()
'Tạo delegate
Dim MI As New MethodInvoker(AddressOf Demo)
'Chạy delegate MI trên thread của Form1
Me.Invoke(MI)
End Sub
Anh cho em hỏi chút ạ!
Em giờ muốn việt một cái ứng dụng winform có 2 button, 2 button tương ứng với 2 chức năng khác nhau. 2 chức năng này sẽ được đặt lịch chạy trong ngày (Vd 20h và 23h) sau khi nhấn button (button dạng Start - Stop ấy ạ), đến giờ là nó sẽ chạy.
Em dùng giải pháp trong video này đã đủ đáp ứng công việc chưa ạ??
Nếu có thể, anh cho em một vài lưu ý về tech được sử dụng để code được ko ạ.
Cám ơn anh!
cái giải pháp trong video k đủ sài. nó sẽ có bug trong vài trường hợp. nói chính xác là k tối ưu. thường làm 1 service chạy riêng. nằm ngoài thread rồi. nên ở phạm vi bài này thì giải pháp đó là sài được
Anh cho em xin tham khảo giải pháp khác với ạ.
Hướng của em là:
1. Lấy list thời gian đã cài đặt
2. Chạy while(true) check time đúng trong list, nếu OK mở new thread call function thực hiện.
Chỉ đơn giản vậy thôi ạ :)
a cho em hỏi chỗ Control.CheckForIllegalCrossThreadCalls = false , a nói cách này khuyên không nên dùng, vậy thì mình nên dùng cách nào?
xử lý deadlock với từ khóa lock.
cái chỗ anh viết cho chữ nó chạy cái này là anh sử dụng ủy nhiệm hàm mà
trong trường họp của bài này thì nên dùng phương thức Invoke!@
anh làm sai ở phút 25 á :D textBox2 mà a, textBox1 null sao mà nó hiểu được bao nhiêu giây mà chạy :)
Phần Thread cơ bản ở đâu ạ?
ruclips.net/video/5-LV54Ju6-o/видео.html
chỗ thread cuối lấy nhầm text của Textbox1 r Kteam ơi =))
cám ơn howkteam .1 sub cho hkt để tiện theo dõi :D
Vậy làm sao để tạm dừng và khởi động lại một thread không sử dụng hai phương thức Suspend và Resume?
tại sao lại k sài 2 thằng đó nhỉ???
chơi lầy thì làm 1 vòng lặp. đặt 1 lá cờ.
tại em thấy hai phương thức ấy bị gắn nhãn obsolete mà
e muốn tạo button để tạm dừng thread hoặc tiếp tục nó phải làm sao a ơi
Hơi cực
K team có cách khác để tạo button tạm dừng cái auto k anh
@@taominh cực lắm bạn
invoker ở bài mấy vậy ta
multi threading ấy bạn www.howkteam.vn/course/khoa-hoc-lap-trinh-c-nang-cao/multi-threading-da-luong-trong-c-4043
chưa chạy xong tắt vẫn bị đơ
Khúc 23:05 mình đã gặp chỉ muốn thốt lên, dm, ai ăn hết của cha nó hay sao mà viết kiểu như vậy, chả clean code nào cả.
Phu Nguyen cứng nhắc quá. Bốc đồng quá. Bạn hiểu là tốt rồi. Cố lên