Bài giảng Lập trình mạng - Ống dẫn cung cấp cho người học các kiến thức: Khái niệm, ống dẫn trong Java, ví dụ về ống dẫn trong Java. Đây là một tài liệu hữu ích dành cho các bạn sinh viên ngành Công nghệ thông tin và những ai quan tâm dùng làm tài liệu học tập và nghiên cứu. | Ống dẫn Khái niệm Ống dẫn trong Java Ví dụ về ống dẫn trong Java Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ 1 Khái niệm về ống dẫn Ống dẫn là gì? Là một tiện ích được hỗ trợ trong hầu hết các hệ điều hành đa nhiệm. Cho phép 2 quá trình trên cùng 1 máy có thể trao đổi dữ liệu với nhau. Dữ liệu đi trên ống dẫn theo một chiều nhất định. Xây dựng ứng dụng Client- Server bằng cách sử dụng 2 ống dẫn: Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ 2 Phân loại ống dẫn Ống dẫn có tên (Named Pipe) Cho phép hai quá trình có không gian địa chỉ khác nhau nhưng phải trên cùng một máy giao tiếp với nhau. Giống như 1 tập tin: dữ liệu sẽ được lấy ra ở đầu tập tin và được thêm vào ở cuối tập tin. Ống dẫn bình thường ( Normal Pipe) Giới hạn trong phạm vi không gian địa chỉ của 1 quá trình. Giao tiếp giữa các thread trong 1 quá trình. Thread 1 Pipe Thread 2 Java hỗ trợ ống dẫn bình thường Process Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ 3 Ống dẫn trong Java Java hỗ trợ tiện ích ống dẫn thông qua hai lớp: : thừa kế từ lớp InputStream. : thừa kế từ lớp OutputStream. Các bước tạo ống dẫn PipedInputStream daudoc = new PipedInputStream(); PipedOutputStream daughi = new PipedOutputStream(); (daughi); Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ 4 Ống dẫn trong Java Sử dụng Pipe trong Java: : thừa kế từ lớp InputStream. Có 3 phương thức read() : đọc dữ liệu từ Pipe. Phương thưc close(): đóng pipe và giải phóng tài nguyên. : thừa kế từ lớp OutputStream. Có 3 phương thức write() : ghi dữ liệu vào Pipe. Phương thưc close(): đóng pipe và giải phóng tài nguyên. write() Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần .