some questions and answers that i questioned my self. now i have answers for that.
why windows still use back slash
Tags: win10
nguyên nhân thằng window vẫn sửa dụng \ vì đơn giản lý do lịch sử window sử dụng / làm switch option ngay từ những ngày đầu
ví dụ lệnh show file trong một thử mục với switch là w
dir /w
why java string is immutable
Tags: java
- string pool và toán tử == là so sánh cùng địa chỉ
- do vậy 2 biến string cùng trỏ tới vùng nhớ ở spring pool sẽ bằng nhau
- khi biến tring được thay đổi string pool sẽ tạo string mới và biến sẽ được trỏ lại tới vị trí này
- do vậy nếu có 2 biến tring cùng giá trị nhưng khởi tạo bằng new String() thì dùng toán tử == sẽ cho kết quả false
- sử dụng string immutable cho phép nhiều biến có giá trị string giống nhau trỏ về cùng một nơi giảm bộ nhớ sử dụng
- sử dụng string immutable cho phép thread safe khi có cả ngàn thread có biến string cùng giá trị này
Implement Runable vs. extends Thread
nếu implement Runnable class có thể kế thừa thêm các class khác, đa kế thừa
dùng extends thì không thể kế thừa thêm các class khác
VẬY nên sử dụng implement Runable để tăng linh động cho class
git commit —fixup ???
git commit fixup có 2 fixup trỏ linked list hay trỏ vào 1 thằng thì sao ?
fixup theo kiểu trỏ vào 1 cái gốc và fix theo kiểu linked list khi rebase —autosquash thì đều có kết quả như nhau
đấy là mình chạy thử thấy vậy, còn phía dưới nó khác nhau hay k thì phải xem chi tiết nó hoạt động ra sao
can two linux app bind same port
Tags: linux
yes
trên linux nếu có 2 card mạng thì 2 app có thể bind vào 2 card mạng khác nhau do vậy hoàn toàn có thể có 2 app chạy trên cùng một máy, cùng một port và khác bind address
python - virtualenv vs venv
Created: March 12, 2022 Tags: python
virtualenv là một package độc lập với python thậm chí không cần phải cài python ở hệ thống
venv là một module được đóng gói đi kèm với python
do vậy điểm khác biệt có thể thấy rất rõ như
venv sẽ đi kèm theo python và phiên bản python của venv sẽ giống hệt python mà nó gọi
virtualenv thì khác có thể tạo môi trưởng ảo với bất kì phiên bản python nào được specify lúc khởi tạo
can client socket use same port
Created: February 10, 2022 Tags: network
hôm trước mình đọc docs của cloudflare thì cũng tương tự như server, để định danh một kết nối thì chỉ 4 tham số gồm
ip source + port source
ip destination + port destination
do vậy nếu vẫn sử dụng port source mà phân biệt được (sử dụng logic xử lý) thì không cần thiết phải tạo thêm connection.
từ đó có thể tối ưu tài nguyên sử dụng: connection pool, ... các thứ các thứ.