Chạy tập lệnh con trong luồng riêng

Không xem được? Mở trên YouTube

Lệnh Chạy tập lệnh trong luồng riêng trong C-Auto Ultra cho phép nhiều tập lệnh chạy song song thay vì lần lượt, ví dụ để hai ngón vuốt cùng lúc. Video giải thích luồng chính, luồng phụ, lệnh đợi và kiểm soát luồng.

Đây là tính năng nâng cao: tác giả cho biết rất ít khi dùng, chỉ nên dùng khi thật sự cần vì luồng dễ làm tập lệnh rối.

Bạn sẽ học được
  • Luồng riêng khác chạy tuần tự thế nào
  • Luồng chính, luồng phụ và vì sao cần lệnh đợi
  • Tách hai ngón vuốt thành hai tập lệnh chạy song song
  • Dừng một luồng bằng Kiểm soát luồng

Mục lục video

  1. 00:00Chạy tập lệnh trong luồng riêng
  2. 00:56Luồng riêng khác chạy tuần tự thế nào
  3. 02:06Luồng chính và luồng phụ
  4. 02:50Thêm lệnh đợi
  5. 03:24Ví dụ: hai ngón vuốt song song
  6. 05:43Hai lệnh đã chạy song song
  7. 06:33Kiểm soát luồng

Chạy tuần tự và chạy trong luồng riêng ▶ 00:00

Bình thường tập lệnh chạy theo thứ tự từ trên xuống dưới: vào nhánh nào thì chạy hết nhánh đó rồi mới sang nhánh tiếp theo.

Luồng riêng không chờ lệnh trước chạy xong ▶ 00:56

Ví dụ chạy tập lệnh mở game trong luồng 1, sau đó một tập lệnh khác trong luồng 2. Khi chạy trong luồng riêng, C-Auto không chờ tập lệnh 1 chạy hết mà tiếp tục chạy tập lệnh 2, rồi tiếp tục xuống các dòng bên dưới.

Luồng chính và luồng phụ ▶ 02:06

Có 20 luồng riêng, và tất cả chịu ảnh hưởng của luồng chính (nhánh chạy từ đầu). Khi luồng chính kết thúc, toàn bộ luồng phụ cũng dừng theo.

Thêm lệnh đợi ▶ 02:50

Để các tập lệnh bên trong chạy xong, hãy thêm lệnh đợi sau chúng. Luồng chính sẽ chờ hết thời gian đợi rồi mới thoát.

Ví dụ: hai ngón vuốt song song ▶ 03:24

Nếu dùng một lệnh thao tác nhiều ngón với ngón 1 và ngón 2 vuốt hai hướng, khi chạy thực tế các ngón có thể chạy lần lượt, không đảm bảo vuốt cùng lúc.

Cách làm trong video: tách thành hai tập lệnh (1 và 2), mỗi tập một ngón, rồi trong tập lệnh chính chạy cả hai trong luồng riêng. Khi bỏ lệnh đợi, hai luồng bị thoát ngay; thêm lệnh đợi khoảng 2 giây thì hai lệnh chạy song song đến hết.

Kết quả chạy song song ▶ 05:43

Hai lệnh chạy song song, còn luồng chính chờ cả hai thoát ra.

Kiểm soát luồng ▶ 06:33

Lệnh Kiểm soát luồng điều khiển các lệnh đang chạy trong một luồng cụ thể (có các tùy chọn thoát, tạm dừng, tiếp tục). Trong video, một tập lệnh chạy ở luồng 1, một tập ở luồng 2, rồi tắt luồng 1: luồng 1 đang chạy dở thì dừng hẳn, luồng 2 vẫn tiếp tục chạy.

Câu hỏi thường gặp

Chạy trong luồng riêng khác chạy bình thường thế nào?

Chạy bình thường phải chờ tập lệnh trước chạy xong; chạy trong luồng riêng thì không chờ mà tiếp tục chạy lệnh tiếp theo, nên các tập lệnh chạy song song.

Vì sao luồng phụ bị dừng giữa chừng?

Khi luồng chính kết thúc, toàn bộ luồng phụ dừng theo. Hãy thêm lệnh đợi để luồng chính chờ các luồng phụ chạy xong.

Làm sao dừng riêng một luồng?

Dùng lệnh Kiểm soát luồng, chọn luồng cần dừng.

Nội dung video (phụ đề)

Chạy tập lệnh trong luồng riêng

Rồi, bây giờ đến cái phần, à, chạy tập lệnh trong luồng riêng. Cái thằng này nó là cái thằng nâng cao, mình rất ít khi mình dùng, thì các bạn xem, không nên động vào nha. Vì là nó… khi bạn động vào đây nó sẽ rất là rối. Bình thường thì các bạn chỉ cần chạy theo cái… đây, ví dụ như là… đây là một luồng, nó sẽ chạy theo thứ tự từ trên xuống dưới này, vào cái nhánh nào ấy thì nó sẽ chạy đấy. Ví dụ vào nhánh bốn này, nó sẽ… nếu mà vào nhánh đúng này, tách tách tách ra ngoài này theo các cái nhánh này, chạy xong nó lại mới tiếp tục chạy nhánh năm này.

Luồng riêng khác chạy tuần tự thế nào

Còn cái thằng luồng riêng này ra, luồng riêng này, thì khi các bạn chạy đến, ví dụ như chạy đến cái nhánh bốn này, rồi các bạn, à, ở đây nó cũng không phải là cái nhóm chạy tập lệnh, mình sẽ thêm cái… thêm ví dụ vào đây cho nó dễ nhỉ. Chạy cái thằng mở game này trong luồng 1 này. Sau đó chạy cái thằng mở nhắn lại trong luồng 2 này, thì khi nó chạy đến cái tập lệnh trong luồng riêng này, thì nó sẽ tính như thế nào? Bình thường nó phải chạy hết thằng 1 này thì mới chạy đến thằng 2, đúng không? Nhưng mà khi các bạn chạy đến chạy trong luồng riêng ấy, thì vào thằng 1 này, nó không chờ cái thằng 1 này chạy hết. Nó sẽ tiếp tục chạy thằng 2 này. Đấy. Và đến thằng 2, nếu bạn để chạy trong luồng riêng, nó cũng không chờ thằng 2 và nó tiếp tục xuống dưới này. Đấy. Cái đấy là nó là cái luồng riêng.

Luồng chính và luồng phụ

Mà nó có một cái mà các bạn phải lưu ý là như này. Các cái luồng riêng này, có 20 luồng này, thì nó sẽ chịu cái ảnh hưởng của cái luồng chính. Luồng chạy chính là thằng từ đầu này. Đấy là cái nhánh chính này, gọi là nhánh thời gian chính này. Còn những cái nhánh này, nhánh thời gian phụ, khi mà thằng chính này nó kết thúc thì nó sẽ dừng toàn bộ cái thằng phụ này. Ví dụ như hai cái lệnh này, để cho nó có thể chạy hết cái thằng bên trong này, đấy, thì thằng bên ngoài phải chờ, đúng không? Nó chờ hai thằng bên trong chạy xong rồi mới thoát, chứ không, thằng bên ngoài thoát ra thì hai thằng trong bị thoát theo.

Thêm lệnh đợi

Thì khi các bạn để như này thì các bạn phải thêm cái lệnh đợi vào. Đây, nó đang… à… Rồi, thì các bạn thêm cái lệnh đợi vào, thì nó sẽ chờ hết cái thời gian đợi này nó mới thoát, để đảm bảo cho cái lệnh bên trong này nó chạy xong. Thì luồng nó rất là phức tạp.

Ví dụ: hai ngón vuốt song song

Ví dụ như mình dùng cái thao tác, à, nhiều ngón chẳng hạn. Đây, ví dụ nhỉ, tạo một cái lệnh, à, thao tác nhiều ngón. Ngón 1 này mình sẽ vuốt nó từ cái tọa độ này sang bên này. Rồi, ngón 1 này. Ngón 2 mình sẽ vuốt nó từ bên này sang bên này. Đấy, thì khi các bạn chạy như này thì nó không đảm bảo hai ngón cùng vuốt cùng lúc, mà nó sẽ… đây. Đấy, nó sẽ chạy từng ngón một, thì nó không đảm bảo, đúng không? Lúc đấy ta phải tách nó ra để cho nó chạy song song với nhau. Đây, xóa đi. Lưu cái thằng này. Lưu thằng này vào thằng 1 này chẳng hạn. Rồi, ta sẽ mở cái thằng 2 đi. Để nó vào thằng 2 này. Đây, đây có thằng 2 này. Bây giờ thằng 0 này mình sẽ chạy hai cái lệnh, à, 1 và 2 song song. 1 này. À, đâu, luồng riêng thôi mà. Mình sẽ thử bỏ thằng đợi đi, chạy thử nha. Đó. Các bạn thấy này, nếu mà ta không đợi, thì nó chạy đến đây là hai cái thằng này nó… nó đã bị thoát ra rồi. Ta sẽ phải đợi cho nó vuốt xong, đúng không? Đợi lên tầm 2 giây đi.

Hai lệnh đã chạy song song

Đó, khi này là hai cái lệnh nó đã chạy song song với nhau. Đấy. Và thằng luồng chính này sẽ chờ hai cái thằng này nó thoát ra. Thì tên luồng này, các bạn có thể chạy luồng riêng, ví dụ như nó là thuộc loại song song, cái tên luồng này thì nó chỉ có tác dụng với cái thằng… này, mình có… bạn chạy song song nhiều lệnh trong luồng 1 này, tuy nhiên…

Kiểm soát luồng

…kiểm soát những cái lệnh mà chạy trong luồng nào đấy. Ví dụ như chạy cái… này, ừ, sẽ để cho nó đợi khoảng 200 giây thôi. Sau đó đây, thằng này cho sang luồng 2. Cái thằng luồng 1 này, tắt thằng luồng 1 đi. Rồi sau đó đợi thằng luồng 2 chạy xong, thì để mình xem là nó sẽ ra kết quả như nào nhá. Đó, các bạn có thể thấy này, thằng luồng 1 này đang chạy dở thì nó bị dừng mất rồi đấy. Nó dừng mất thì nó không tiếp tục vuốt được nữa. Thì tiếp tục lên thằng thứ hai nó chạy. Thì đấy là cái kiểm soát luồng.

Video hướng dẫn liên quan

Xem trọn bộ video hướng dẫn C-Auto Ultra trên YouTube →

MessengerZaloTelegramPhone