Ý một mình nói kỹ một chút, tức là đồng bộ chỉ chơi với đồng bộ. Một threadA muốn đồng bộ một đối tượng object với ThreadB thì cả hai phải có giai đoạn khóa object này lại.
Synchronized(object){
statement 1,
statement 2,
...
statement n
}
Trong lúc nó khóa object này lại thì nó sẽ thực hiện các câu lệnh statement (các câu lệnh là tùy ý tùy theo nhu cầu mỗi thread). Xong việc thì nó sẽ giao quyền khóa object lại cho một thread khác.
từ khóa synchronized dùng ở phương thức cũng mang cùng ý nghĩa như trên.
Mình thấy cách hiểu đồng bộ theo đoạn code hay phương thức rất dễ gây hiểu nhầm. Mình thì hiểu đồng bộ chia làm 2 cấp, đầu tiên là ở cấp đối tượng, 2 là ở cấp class(tức là khác đối tượng cũng đồng bộ được)
Và một điều quan trọng cũng như cơ bản cần nhớ là đồng bộ sẽ chỉ chơi với đồng bộ (synchronized). Nếu một threadA muốn đồng bộ dữ liệu với một thread B thì cả hai thằng đều phải dùng các câu lệnh(hay method) có từ khóa synchronized.
Điều quan trọng thứ 2 là khi synchronized(object) tức là object đó đang bị khóa bởi luồng(tạm gọi ThreadA) chứa câu lệnh đó. Và bất kỳ thread nào làm việc gì liên quan đến synchronized đối với object này, mà trong thời gian thằng ThreadA đang lock object đó đều phải đợi cho đến khi thằng ThreadA xong việc với object.
đoạn này bạn mô tả chưa rõ
"Trong trường hợp mà rule validate ở phía server-side không áp dụng được với phía client, nó sẽ không attempt cho client và quay trở lại validate ở server-side"
nếu rule này xảy ra thì overload request ah, vì server-side validate chưa thoả mãn rồi lại gửi lại chính nó.
Theo mình hiểu là validate ở client chưa thoả mãn đẩy lên server-side, server-side sẻ xử lý và đẩy về client mgs chứ
Bài viết rất hay ạ.
Trước đây em cũng đã từng sử dụng Jquery để viết cho ứng dụng, tuy nhiêù thì em thấy cấu trúc nó hơi lằn ngoằn, và khó bảo trì sau này.
Khi viết các sự kiện thì phải nhớ các class, id của dom đó, cực kì khó chịu :v
Với React thì HTML dc viết trong Javascript, dễ nhìn hơn (hơi khó với những bạn bắt đầu), cấu trúc logic hơn, one data binding - mỗi lần cập nhật dữ liệu không còn phải thao tác như trên DOM.
Nói chung REACT rất tuyệt vời trong việc xây dựng 1 ứng dụng, mà developer quan tâm tới việc bảo trì và tái sử dụng sau này.
THẢO LUẬN
Ý một mình nói kỹ một chút, tức là đồng bộ chỉ chơi với đồng bộ. Một threadA muốn đồng bộ một đối tượng object với ThreadB thì cả hai phải có giai đoạn khóa object này lại. Synchronized(object){ statement 1, statement 2, ... statement n } Trong lúc nó khóa object này lại thì nó sẽ thực hiện các câu lệnh statement (các câu lệnh là tùy ý tùy theo nhu cầu mỗi thread). Xong việc thì nó sẽ giao quyền khóa object lại cho một thread khác. từ khóa synchronized dùng ở phương thức cũng mang cùng ý nghĩa như trên.
Mình thấy cách hiểu đồng bộ theo đoạn code hay phương thức rất dễ gây hiểu nhầm. Mình thì hiểu đồng bộ chia làm 2 cấp, đầu tiên là ở cấp đối tượng, 2 là ở cấp class(tức là khác đối tượng cũng đồng bộ được)
Và một điều quan trọng cũng như cơ bản cần nhớ là đồng bộ sẽ chỉ chơi với đồng bộ (synchronized). Nếu một threadA muốn đồng bộ dữ liệu với một thread B thì cả hai thằng đều phải dùng các câu lệnh(hay method) có từ khóa synchronized.
Điều quan trọng thứ 2 là khi synchronized(object) tức là object đó đang bị khóa bởi luồng(tạm gọi ThreadA) chứa câu lệnh đó. Và bất kỳ thread nào làm việc gì liên quan đến synchronized đối với object này, mà trong thời gian thằng ThreadA đang lock object đó đều phải đợi cho đến khi thằng ThreadA xong việc với object.
Tương tự với cấp độ Class.
Great!
Great!
site này của Framgia à bác?
Cảm ơn bác, hehe, giờ mới biết
Hay đó anh Hữu ơi, nhưng anh share thêm mấy cái anh bảo em tìm hiểu đê...cái này làm search fulltext em sử dụng nó đó.hihi
nhảy vào api của EC Cube thôi, ver 3 làm build trên framework rồi dễ làm hơn.
đoạn này bạn mô tả chưa rõ "Trong trường hợp mà rule validate ở phía server-side không áp dụng được với phía client, nó sẽ không attempt cho client và quay trở lại validate ở server-side"
nếu rule này xảy ra thì overload request ah, vì server-side validate chưa thoả mãn rồi lại gửi lại chính nó.
Theo mình hiểu là validate ở client chưa thoả mãn đẩy lên server-side, server-side sẻ xử lý và đẩy về client mgs chứ
Bạn có thể trích nguồn tiếng anh được không
Thank bác Trong Tran Ba (@bs90). Chắc phải mò thôi có tiếng nhật thì sẽ học dễ hơn vì ít ra cũng nhiều ng làm và viết bài giới thiệu.
Ngày xưa mình làm việc với EC-Cube nó còn chả có bản tiếng Anh cơ. Giờ có là tốt lắm rồi. Còn document thì có vẻ như họ chưa xây dựng xong
Tuy nhiên họ có demo và cả một cái forum support tiếng Anh mà Có gì không hiểu bạn cứ nhảy vào đó mà hỏi là OK
http://en.ec-cube.net/forum/
đúng là chả hiểu gì cả
bjo mới có phần mới anh ơi
Bài viết sơ sài và thiếu một customized view quan trọng là TabLayout, và chưa hiểu đúng về CoordinateLayout..
holy shit! what's your speaking language now?
Bài viết rất hay ạ. Trước đây em cũng đã từng sử dụng Jquery để viết cho ứng dụng, tuy nhiêù thì em thấy cấu trúc nó hơi lằn ngoằn, và khó bảo trì sau này. Khi viết các sự kiện thì phải nhớ các class, id của dom đó, cực kì khó chịu :v Với React thì HTML dc viết trong Javascript, dễ nhìn hơn (hơi khó với những bạn bắt đầu), cấu trúc logic hơn, one data binding - mỗi lần cập nhật dữ liệu không còn phải thao tác như trên DOM. Nói chung REACT rất tuyệt vời trong việc xây dựng 1 ứng dụng, mà developer quan tâm tới việc bảo trì và tái sử dụng sau này.
@minhp : ha ha ha! thanks, feeling inspired
Very useful post. Mistakenly pressed No and cannot undo, sorry )
FYI: A CASH ROBBERRY