Bạn đọc kĩ lại nhé CAS bao gồm 3 bước và 3 bước này không thể bị xen vào bởi các hành động khác (atomic).
Bạn truy xuất biến COUNTER nhưng truy xuất qua method incrementAndGet(), tức là lúc này thread-2 sẽ get được giá trị = 0 (nếu t2 thực hiện thành công CAS trước) và giá trị = 1 (nếu t2 thực hiện thành công CAS sau; trong method increamentAndGet nó có retry đến khi nào thành công thì thôi). Nếu b sử dụng method get() để lấy giá trị của COUNTER thì giá trị lúc này có thể là 0 hoặc 1 tuỳ thuộc vào thread nào thực hiện CAS thành công trước. Nếu mình giải thích chưa clear thì b cứ để lại cmt nhé.
Bạn check xem cái request lỗi kia có truyền lên header csrf hay không. Nếu request lỗi không truyền lên header csrf thật thì bạn xem lại cơ chế lấy csrfở dưới làm js mỗi khi setInterval xem sao. Trước đây mình dùng hàm setInterval có bị lỗi lack memory một lần thì phải
Bác giải thích giúp em đoạn này với. Đoạn này em không hiểu ạ.
"Các bước thực hiện CAS:
Kiểm tra giá trị hiện tại của biến tại (M).
So sánh giá trị đó với (A):
Nếu giá trị đó khác (A), không làm gì, kết thúc CAS.
Nếu giá trị là (A), thực hiện việc thay đổi vùng nhớ sang giá trị (B)."
ví dụ nếu cả 2 thread kia cùng truy xuất biến COUNTER cùng 1 lúc. thread 1 giá trị counter sẽ là 0, thread 2 giá trị counter sẽ là 0.
xong rồi thằng thread 1 tăng lên là 1. lúc này counter có giá trị là 1. Thread 2 thì CAS: 0 != 1 -> bỏ qua và không làm gì. nếu vậy thì sao tăng được lên 200. vì thead2 kia lần đầu đã bị ignore 1 lần tăng lên rồi.
@l3lackheart Khi login admin và user có url login riêng mà. Mình check dựa vào callback của url đó là xác định được guard thôi. Bác nên phân biệt rõ được guard và role 🙆🏻♂️ 1 guard có thể có nhiều role
Mình đã thiết kế đc Unet architecture, nhưng đang có vde về database. Bạn cho mình hỏi làm cách nào để thiết kế mạng Unet sử dụng thêm các thông số khác bổ trợ cho main input? và có nhất thiết số lượng ảnh input phải bằng output (mask) trong mạng Unet ko? cám ơn bạn
@HuyDQ ,localhost, đó,do xampp hay server thế,bật mysql xampp thì nó lên,nhưng trang adminphp không lên,à cho mìn hỏi nếu muốn migrate database laravel được phải truy cập được phpmyadmin và edit username,pass của xampp phải vô phpmyadmin à
THẢO LUẬN
@le.vinh.thien Ví dụ như chủ thớt muốn đếm những account đều xuất hiện ở hệ thống A và hệ thống B thì sao bạn ?
Bạn đọc kĩ lại nhé CAS bao gồm 3 bước và 3 bước này không thể bị xen vào bởi các hành động khác (atomic). Bạn truy xuất biến COUNTER nhưng truy xuất qua method
incrementAndGet(), tức là lúc này thread-2 sẽ get được giá trị = 0 (nếu t2 thực hiện thành công CAS trước) và giá trị = 1 (nếu t2 thực hiện thành công CAS sau; trong methodincreamentAndGetnó có retry đến khi nào thành công thì thôi). Nếu b sử dụng methodget()để lấy giá trị của COUNTER thì giá trị lúc này có thể là 0 hoặc 1 tuỳ thuộc vào thread nào thực hiện CAS thành công trước. Nếu mình giải thích chưa clear thì b cứ để lại cmt nhé.Tks anh, bài viết hay nhất trên viblo mà em từng đọc!!
@conghdql4 vậy thì bạn sai từ cái đoạn lấy ra cái $arr. tại sao lại xuất hiện những ID ko tồn tại, rồi để phải xử lý sql khổ như vậy.
Trường hợp item có trong $arr nhưng không có trong CSDL thì sai rồi bạn
Bài viết chất lượng
Bạn check xem cái request lỗi kia có truyền lên header
csrfhay không. Nếu request lỗi không truyền lên headercsrfthật thì bạn xem lại cơ chế lấycsrfở dưới làm js mỗi khi setInterval xem sao. Trước đây mình dùng hàm setInterval có bị lỗi lack memory một lần thì phảiBác giải thích giúp em đoạn này với. Đoạn này em không hiểu ạ.
"Các bước thực hiện CAS: Kiểm tra giá trị hiện tại của biến tại (M). So sánh giá trị đó với (A): Nếu giá trị đó khác (A), không làm gì, kết thúc CAS. Nếu giá trị là (A), thực hiện việc thay đổi vùng nhớ sang giá trị (B)."
ví dụ nếu cả 2 thread kia cùng truy xuất biến COUNTER cùng 1 lúc. thread 1 giá trị counter sẽ là 0, thread 2 giá trị counter sẽ là 0. xong rồi thằng thread 1 tăng lên là 1. lúc này counter có giá trị là 1. Thread 2 thì CAS: 0 != 1 -> bỏ qua và không làm gì. nếu vậy thì sao tăng được lên 200. vì thead2 kia lần đầu đã bị ignore 1 lần tăng lên rồi.
@l3lackheart Khi login admin và user có url login riêng mà. Mình check dựa vào callback của url đó là xác định được guard thôi. Bác nên phân biệt rõ được guard và role 🙆🏻♂️ 1 guard có thể có nhiều role
Mình đã thiết kế đc Unet architecture, nhưng đang có vde về database. Bạn cho mình hỏi làm cách nào để thiết kế mạng Unet sử dụng thêm các thông số khác bổ trợ cho main input? và có nhất thiết số lượng ảnh input phải bằng output (mask) trong mạng Unet ko? cám ơn bạn
Cảm ơn tác giả, bài viết đã giúp mình fix được lỗi contract address khi nhận NFT
Cảm ơn bác đã dịch, các phần tiếp theo ở đâu nhỉ mình tìm không thấy.
,hix mình định lấy user,pass phpmyadmin ghi vô file env cấu hình laravel làm web
@koyoy sorry bạn phần xampp này thì nhiều năm rồi mình không còn sử dụng nên cũng không nhớ config như nào nữa
@HuyDQ ,localhost, đó,do xampp hay server thế,bật mysql xampp thì nó lên,nhưng trang adminphp không lên,à cho mìn hỏi nếu muốn migrate database laravel được phải truy cập được phpmyadmin và edit username,pass của xampp phải vô phpmyadmin à
@koyoy bạn bị trên local hay trên heroku thế?
bất kỳ web app nào cũng làm giông app polls à,nhưng sao có trang chỉ cách làm web bán đt mình thấy nó làm không polls nhỉ bạn
@HuyDQ ,bạn ơi mình bị lỗi not connection khi migrate csdl hoài dù trong file env mình gõ đúng pass,tên user là root,123456
cái này có lưu db được không ạ
(, em đang làm đồ án, có phần chat mà em không biết làm
(
mình đang cài django ,mình mới chỉ render ra chữ trong django bằng responwerite(""),còn file html ,css,javascript,image làm sao render