1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài: Chia sẻ file ảnh

45 270 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 45
Dung lượng 3,64 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đề tài: Chia sẻ file ảnh Chương 1: Cơ sở lý thuyết31.1.Windows Form31.1.1.Sự quan trọng của Windows Forms31.1.2.Những điểm căn bản của Windows Forms31.1.3.Các sự kiện của Forms41.1.4.Chọn startup form51.2.Nút nhấn (Button)61.2.1.Tạo một nút nhấn (button) trên form71.2.2.Các thuộc tính71.2.3.Các sự kiện của button91.3.Nhãn111.3.1.Tạo một nhãn (Label) trên form111.3.2.Các thuộc tính thông dụng của nhãn (Label)111.3.3.Các sự kiện của nhãn121.4.Ô nhập (Textbox)121.4.1.Các thuộc tính121.4.2.Các sự kiện131.5.Danh sách131.5.1.Các thuộc tính của Listbox131.5.2.Các sự kiện141.6.Thanh công cụ (Toolbar)14

Trang 2

Chương 1: Cơ sở lý thuyết

1.1 Windows Form

1.1.1 Sự quan trọng của Windows Forms

Window forms chính là cửa sổ của một màn hình ứng dụng Nó chứa đựng các dữ liệu, control trên đó và là cửa sổ giao tiếp giữa người sử dụng (user) và máy tính.

1.1.2 Những điểm căn bản của Windows Forms

Một Windows Forms thật sự là một class Trong NET không có từ đặc biệt như “form module” để dùng cho nó

Vì một form là một class nên ta không thể load nó mà không chỉ rõ ra Tức là trong VB6 nếu ta Show hay dùng đến một Form thì nó tự động được loaded Chẳng

những thế thôi, cái class Form2 được dùng như mộtvariable Form2 luôn, tức là

by default ta có một Object tên Form2 Trong NET ta phải khai báo (declare) một variable tên myForm2 chẳng hạn rồi instantiate form ấy như một Object của

Form2 trước khi dùng nó.

Tất cả mọi form đều thừa kế từ class System.Windows.Forms.Form.

Giống như tất cả các classes trong NET Framework, Windows Forms có

constructors và destructors Constructor của form tên là void New, đại khái giống như Sub Form_Load trong VB6 Destructor của form tên là void Dispose, đại khái

giống như Sub Form_Unload trong VB6.

Cái visual forms designer của VS.NET nhét rất nhiều code để instantiate form

và đặt các controls vào form Đó là code mà đáng lẽ ta phải tự viết nếu ta dùng notepad để lập trình Phần code nầy thay thế cái phần nằm ở đầu tệp frm của VB6

để diễn tả các visual components của form Mỗi lần ta thêm bớt các controls hay thay thế các properties của controls trên form thì code generated cho form được thay đổi theo Do đó bạn nên tránh sửa đổi code ấy, trừ khi biết chắc mình đang làm gì, hay là bạn làm một phiên bản trước khi thay đổi để nếu lỡ kẹt thì restore code cũ.

Trang 3

Event được xử lý bằng cách linh động hơn Các events chứa nhiều tin tức hơn Một Event có thể được xử lý bởi nhiều controls cùng một lúc và mỗi control có một cách xử lý khác nhau Ngược lại, nhiều Events khác nhau có thể được xử lý bằng một Event Handler duy nhất.

1.1.3 Các sự kiện của Forms

Trong lập trình visual, điều quan trọng nhấn là sử lý các sự kiện Khi lập trình, thường ta chỉ thực hiện các thao tác kéo thả là ta có thể tạo được một giao diện hoàn chỉnh Tuy nhiên, để giao diện đó hoạt động được theo đúng yêu cầu của

ta thì ta buộc phải lập trình cho các sự kiện của từng hay nhiều control trên form đó.

Form có rất nhiều sự kiện, ở đây chỉ giới thiệu đến một số sự kiện quan trọng của form:

– Sự kiện Click (khi ta click mouse lên trên form):

private void Form3_Click(object sender, System.EventArgs e)

Trang 4

này thì VS Net nó chỉ phát sinh 1 hàm xử lý sự kiện mặc định của nó (với form thi hàm mặc định xử lý sự kiện là Form_Load Do vậy, bạn hãy mở cửa sổ properties của đối tượng đó, chọn tab các events, nó sẽ liệt kê các events mà đối tượng có Sau đó bạn double click vào sự kiện mà bạn muốn, và một hàm xử lý sự kiện được tạo ở bên phần source code và bạn chỉ việc viết thêm code để xử lý sự kiện này mà không cần quan tâm đến bằng cách nào mà hệ thống kiểm tra và xử lý nó.

1.1.4 Chọn startup form

Khi một ứng dụng có nhiều form, vấn đề ở chỗ là form nào sẽ là form được chạy đầu tiên khi bạn run một ứng dụng?

Để chỉ định StartUp Form của chương trình, bạn cần phải mở cửa sổ

Properties của Project để đánh vào Startup Object Bạn có thể làm điều ấy bằng cách dùng IDE menu command Project | Properties hay right click tên của Project trong Solution Explorer rồi chọn Properties.

Lưu ý:

Vì trong 1 ứng dụng, thường chỉ có 1 form làm entry form (startup form)

nên VS Net sẽ tự set form đầu tiên của nó là form startup Do đó, khi bạn thêm các form sau thì form đó sẽ không là form startup nên khi bạn startup object, nó sẽ không list ra cho bạn Để có thể làm form startup, bạn phải thay đổi code ở bên trong bằng cách chép đoạn mã này vào trong phần code:

static void Main()

Hãy sử dụng Visual Studio Net để tạo 1 project là FormLarger và tạo 1

form có giao diện giống như hình dưới và viết đoạn code để xử lý sự kiện khi click

Trang 5

chuột lên trên form (bất kỳ chỗ nào) thì 1 message box sẽ hiển thị và form sẽ lớn thêm 50 pixels.

Bạn hãy thay đổi màu nền và thay đổi các đường viền (border) để nhận thấy được

sự khác nhau giữa các style của form.

Dưới đây là đoạn code để xử lý khi bạn click chuột lên trên form:

private void Form1_Click(object sender, System.EventArgs e)

{

MessageBox.Show(“Bạn mới click chuột lên trên form!\n” +

“Click Ok và form sẽ lớn hơn 50 pixels.”);

this.Height = this.Height + 50;

this.Width = this.Width + 50;

}

bạn có thể không cần xuống hàng ở câu lệnh Messagebox.Show()

Lưu ý: Nếu bạn đánh tiếng viện trên form (unicode) thì khi bạn save, nó sẽ yêu cầu bạn chọn save unicode.

Để làm việc này bạn hãy:

Click chuộn vào form cần save, chọn menu file -> Save <tên form> As…

bạn hãy đánh vào ô file name là frmNhapSV và chọn save with Encoding… và

hộp hội thoại sẽ xuất hiện:

bạn hãy chọn Unicode (UTF-8 with signature) – Codepage 65001 và chọnOK.

Trang 6

Trong lập trình visual, form bao giờ cũng cần phải có tên để lập trình (form name)

và tên form để lưu trên đĩa Để cho dễ dàng trong lập trình và quản lý, ta thường hay lấy tên form để lập trình và tên form lưu trên đĩa giống nhau Điều này giúp ta

có thể chỉ biết được là form này có tên là gì mà không cần phải mở của sổ

properties của nó lên.

1.2 Nút nhấn (Button)

Button control là một đối tượng nút nhấn được các nhà phát triển ngôn ngữ lập trình sẵn và để trong thư viện của Visual Studio Net Button control cho phép người dùng click chuột vào nó và nó sẽ thực thi một hay nhiều đoạn mã nào đó mà cho người lập trình (chúng ta) chỉ định thông qua các events mà nó nhận được.

Khi một button được click thì nó sẽ sinh ra một số các sự kiện (events) như Mouse Enter, MouseDown, MouseUp, v.v… và tuỳ với các sự kiện này mà chúng ta có thể lựa viết các đoạn code để xử lý cho phù hợp.

1.2.1 Tạo một nút nhấn (button) trên form

Cách tạo nút nhấn rất đơn giản, ta chỉ việc kéo đối tượng button trên hộp công cụ (toolbox) vào trong form, sau đó ta thay đổi tên (name), text (caption) và kích thước của đối tượng đó cho phù hợp với yêu cầu.

Lưu ý:

Phần lớn những cách tạo đối tượng, thay đổi của thuộc tính, v.v… mọi thứ

mà ta làm bằng giao diện visual đều có thể làm bằng cách viết source code Khi ta làm bằng công cụ visual, công cụ visual sẽ tự genera code ra cho ta.

1.2.2 Các thuộc tính

Cũng như window form, button cũng có các thuộc tính riêng của nó Tuy nhiên vì mỗi đối tượng có rất nhiều thuộc tính, vì vậy ở đây ta chỉ đề cập đến một số thuộc tính quan trọng và hay sử dụng nhiều nhất của đối tượng button Dưới đây là một số thuộc tính thông dụng của đối tượng button:

Trang 7

Text Text Chữ sẽ hiển thị trên button

Font Hộp hội thoại font Chọn font chữ cho text

(chữ hiển thị trên button)

TextAlign TopLeft – TopCenter – TopRight Canh lề chữ: trên bên trái

– giữa phải.

MiddleLeft – MiddleCenter – MiddleRight

ở giữa – bên trái – bên phải

BottomLeft – BottomCenter – BottomRight

bên dưới trái – giữa – phải

mouse lên trên nó thì giống standard và khi bỏ mouse ra thì nó trở lại như

cũ (Flat)

thay đổi theo hệ điều hành

button (giống như bạn chọn Center khi set hình background cho window).

Trang 8

Lưu ý:

Ở thuộc tính TextAlign, khi bạn bấm vào mũi tên sổ xuống trong cửa sổ

properties, nó sẽ hiện ra 1 giao diện đồ hoạ cho ta chọn các kiểu canh lề như hình bên dưới.

Khi bạn chọn nút nào thì nút đó sẽ lõm xuống, đồng thời một dòng chữ sẽ hiển thị ra cho bạn biết là bạn đã chọn kiểu canh lề nào.

1.2.3 Các sự kiện của button

Trong các sự kiện của button thì chỉ có sự kiện Click chuột là quan trong nhất Do đó, trong phần này ta cũng chỉ đi tìm hiểu sự kiện Click chuột.

Cách tạo:

Sự kiện click chuột là sự kiện mặc định của control button, do đó, bạn chỉ cần double click chuột vào button cần tạo sự kiện là VS Net sẽ mở cửa sổ source code

ra và tự động generate một hàm xử lý sự kiện click chuột cho bạn.

private void button1_Click(object sender, System.EventArgs e)

{

//Bạn sẽ đánh code cho phần xử lý sự kiện ở đây.

}

với button1_Click thì button1 chính là tên của control button mà bạn tạo sự kiện

Click chuột cho nó.

Name

Click chuột vào đây!

Mặc định.

Trang 9

Và tạo một sự kiện click chuột cho button này.

Bạn double click chuột vào button, Visual Studio sẽ sinh ra cho bạn một hàm

để sử lý sự kiện click chuột vào button Vì sự kiện Click là sự kiện mặc định của button nên khi bạn double click vào thì sự kiện click cho button đó sẽ được tự động sinh ra Sau đó đánh thêm vào đoạn code sau:

private void button1_Click(object sender, System.EventArgs e)

+ Windows Form Designer generated code

Bạn có thể xem đoạn code bên trong bằng cách bấm chuột vào dấu + Bạn có thể thay đổi source code này theo ý mình nhưng tôi khuyên bạn không nên chỉnh sửa nó trừ khi bạn biết rõ mình sửa nó để làm gì và với mục đích gì.

– Như đã trình bày ở trên, khi bạn đánh vào font chữ việt sự dụng font

unicode, bạn phải lưu form ở chế độ save as unicode (xem lại trên)

Bạn hãy chạy chương trình bằng cách bấm phím F5 để xem kết quả

b) Hãy tạo 1 form gồm 2 button giống như hình dưới:

Khi button Xanh được bấm thì màu nền của form sẽ đổi sang màu xanh, button Đỏ được bấm thì màu nền của form sẽ đổi sang màu đỏ, và button mặc định được bấm thì màu nền của form lại trở về như lúc đầu.

Các thuộc tính:

Trang 10

btnXanh Xanh

Text

btnDo Đỏ

Text

btnMacDinh Mặc Định

1.3 Nhãn

Nhãn là thành phần đơn giản nhất và cũng là một trong những thành phần quan trọng nhất trong lập trình visual Đối tượng nhãn (Label) chỉ để dùng trình bày một chuổi văn bản thông thường nhằm mục đính mô tả thêm thông tin cho các đối tượng khác Ta cũng có thể dùng nhãn để làm công cụ đưa kết quả ra màn hình dưới dạng một chuỗi.

1.3.1 Tạo một nhãn (Label) trên form

Cũng giống như button và hầu hết các control khác trong lập trình visual, để tạo một nhãn trên form, ta chỉ cần kéo đối tượng nhãn từ hộp công cụ ToolBox vào form.

1.3.2 Các thuộc tính thông dụng của nhãn (Label)

Nhìn chung, các thuộc tính của các đối tượng window form control cũng gần gần như nhau Do đó, các thuộc tính mà giống với thuộc tính như của control

button như name, text, font, backcolo, v.v… thì tôi sẽ không trình bày ra nữa Sau đây là một số thuộc tính thông dụng của nhãn (Label):

Tên Thuộc

tính

BorderStyle None (mặc định) Không có đường viền

FixedSingle Có đường viền bao quanh

Trang 11

Fixed3D 3D, trông nó giống như bị lõm xuống (giống

textbox) Đối với nhãn, ta cũng có thể sử dụng anchoring để chỉ định vị trí nhãn trên form khi

ta resize form.

1.3.3 Các sự kiện của nhãn

Trong lập trình Visual, mọi đối tượng đều có sự kiện cho riêng nó, tuy nhiên đối với nhãn, ta thường không sử dụng sự kiện vì nhãn chỉ có chức năng thông dụng là hiển thị một câu thông báo hay kết quả ra màn hình Vì vậy ở đây ta cũng không xét đến các sự kiện của nó.

MaxLength integer Chiều dài tối đa dữ liệu nhập (ký tự)

False

Cho hay không cho textbox cao lên để cho phép nhập nhiều dòng.

PasswordChar character Nếu bạn muốn textbox này là 1 password field thì

bạn chỉ cần chỉ định character mà bạn muốn hiển thị khi bạn nhập password vào thuộc tính này.

Trang 12

Thuộc tính này chỉ có tác dụng khi bạn chọn Multiline= True NoneKhông có thanh cuộn.HorizontalChỉ có thanh cuộn đứng.VerticalChỉ có thanh cuộn ngang.BothCó cả

2 thanh cuộn đứng và ngang.WordWrap

Thuộc tính này chỉ có tác dụng khi bạn chọn Multiline= TrueTrue

FalseTrue – Nếu bạn muốn khi nhập liệu vào textbox thì nó sẽ tự động xuống dòng nếu như hết hàng.

1.4.2 Các sự kiện

Cũng như label, Textbox thường chức năng chính là để nhập liệu nên nó cũng

ít khi phải sử dụng các sự kiện nên ở phần này ta cũng không bàn về các sự kiện của textbox

List cho phép ta tạo ra một danh sách các phần tử để lựa chọn Nếu như số lượng các phần tử lớn hơn số lượng mà danh sách có thể hiển thị trên màn hình (do ta design danh sách có kích thước cao hay ngắn) thì một thanh cuộn sẽ tự động thêm vào trong danh sách để cho ta có thể list qua hết các phần tử Danh sách List trình bày tất cả (hay một phần các phần tử tuỳ theo số lượng phần tử và độ dài trong giao diện của List), ta có thể chọn ra một hay nhiều phần tử cùng một lúuc từ danh sách để xử lý.

1.5.1 Các thuộc tính của Listbox

Từ phần này, các thuộc tính của các control mà nó giống với các thuộc tính ở trên thì tôi không trình bày ra ở đây nữa

để hiển thị xem mà thôi One Chỉ có 1 item được phép chọn.

MultiSimple Có nhiều item được phép chọn cùng một lúc MultiExtended Giống như MultiSimple nhưng ta có thể dùng

phím như SHIFT, các phím mũi tên để chọn.

Trang 13

Sorted True

False

Sắp xếp danh sách theo thứ tự aphabet

danh sách các item.

Khi bạn chọn Items Collection…, một hộp hội thoại String Collection Editor hiển thị

ra cho phép bạn nhập vào các items:

Đối với Listbox, bạn có thể sử dụng dữ liệu lấy tự database lên thay cho các dữ liệu bạn nhập vào để làm danh sách.

1.5.2 Các sự kiện

Sự kiện quan trọng và hay sử dụng nhất của Listbox là SelectedIndexChange

Sự kiện này được phát sinh khi bạn click chuột vào 1 item khác hay bạn dùng phím mũi tên để di chuyển giữa các item.

1.6 Thanh công cụ (Toolbar)

Như đã trình bày ở phần Visual Studio Net, thanh công cụ là tập hợp các nút bấm mang biểu tượng chứa trong một thanh thườn đặt dưới menu Các nút này đảm nhận các chức năng thông dụng trong cấu trúc menu của VS.Net Thanh công

cụ rất hữu ích, thay vì phải lần lượt chọn qua menu và menu con, ta nhấn một nút bấm nào đó trong thanh công cụ để gọi một chức năng tương tự trên menu.

Xử lý sự kiện

Chỉ có một hàm xử lý sự kiện Toolbar, tlbDemo_ButtonClick, được dùng cho tất cả các buttons Ta phân biệt Button nào dựa vào Index của nó, giống giống

như một array of buttons trong VB6 Nếu user click button thứ nhất ta sẽ có

tlbDemo.Buttons.IndexOf(e.Button) bằng 0, lúc ấy ta sẽ Close form chính.

Trang 14

Chương 2: Lập trình mạng trong Net framework 2.1 Socket hướng kết nối (TCP Socket)

Socket là một giao diện lập trình ứng dụng (API) mạng

Thông qua giao diện này chúng ta có thể lập trình điều khiển việc truyền thông giữa hai máy sử dụng các giao thức mức thấp là TCP, UDP…

Socket là sự trừu tượng hoá ở mức cao, có thể tưởng tượng nó như là thiết bị truyền thông hai chiều gửi - nhận dữ liệu giữa hai máy tính với nhau

Các loại Socket

• Socket hướng kết nối (TCP Socket)

• Socket không hướng kết nối (UDP Socket)

• Raw Socket

Đặc điểm của Socket hướng kết nối

• Có 1 đường kết nối ảo giữa 2 tiến trình

• Một trong 2 tiến trình phải đợi tiến trình kia yêu cầu kết nối Có thể sử dụng để liên lạc theo mô hình Client/Server

Trang 15

• Trong mô hình Client/Server thì Server lắng nghe và chấp nhận một yêu cầu kết nối

• Mỗi thông điệp gửi đều có xác nhận trở về Các gói tin chuyển đi tuần tự

Đặc điểm của Socket không hướng kết nối

• Hai tiến trình liên lạc với nhau không kết nối trực tiếp Thông điệp gửi đi phải kèm theo địa chỉ của người nhận Thông điệp có thể gửi nhiều lần

• Người gửi không chắc chắn thông điệp tới tay người nhận

• Thông điệp gửi sau có thể đến đích trước thông điệp gửi trước đó

Số hiệu cổng của Socket

• Để có thể thực hiện các cuộc giao tiếp, một trong hai quá trình phải công bố số hiệu cổng của socket mà mình sử dụng

• Mỗi cổng giao tiếp thể hiện một địa chỉ xác định trong hệ thống Khi quá trình được gán một số hiệu cổng, nó có thể nhận dữ liệu gởi đến cổng này từ các quá trình khác

• Quá trình còn lại cũng yêu cầu tạo ra một socket

2.1.1 Giới thiệu về NameSpace System.Net và System.Net.Sockets

Cung cấp một giao diện lập trình đơn giản cho rất nhiều các giao thức mạng

Trang 16

ToString: Trả địa chỉ IP về dạng xâu

TryParse: Kiểm tra IP ở dạng xâu có hợp lệ không?

Lớp IPEndPoint

Một số phương thức cần chú ý:

Phương thức khởi tạo

IPEndPoint (Int64, Int32) IPEndPoint (IPAddress, Int32) Create: Tạo một EndPoint từ một địa chỉ Socket

ToString : Trả về địa chỉ IP và số hiệu cổng theo khuôn dạng địaChỉ: Cổng, ví dụ: 192.168.1.1:8080

Lớp DNS

Một số thành phần của lớp:

HostName: Cho biết tên của máy được phân giải

GetHostAddress: Trả về tất cả IP của một trạm

GetHostEntry: Giải đáp tên hoặc địa chỉ truyền vào và trả về đối tư

GetHostName: Lấy về tên của máy tính cục bộ

Trang 17

2.1.2 Viết chương trình cho máy chủ

Viết chương trình cho phía máy chủ

Tạo một Socket

Liên kết với một IPEndPoint cục bộ Lắng nghe kết nối

Chấp nhận kết nối

Gửi nhận dữ liệu theo giao thức đã thiết kế đóng kết nối sau khi đã hoàn thành

và trở về trạng thái lắng nghe chờ kết nối mới

Viết chương trình cho phía máy chủ

IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 9050);

Socket newsock = Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

newsock.Bind(ipep);

newsock.Listen(10);

Socket client = newsock.Accept();

//Gửi nhận dữ liệu theo giao thức đã thiết kế ………

newsock.Close();

2.1.3 Viết chương trình cho phía máy khách

Viết chương trình cho phía máy khách

Xác định địa chỉ của Server

Tạo Socket

Kết nối đến Server

Gửi nhận dữ liệu theo giao thức đã thiết kế đóng Socket

Viết chương trình cho phía máy khách

IPEndPoint ipep = new IPEndPoint(Ipaddress.Parse("192.168.1.6"), 9050); Socket server = new Socket(AddressFamily.InterNetwork,SocketType.Stream, ProtocolType.Tcp);

server.Connect(ipep);

2.1.4 Sử dụng các luồng nhập xuất với Socket

Từ Socket ta có thể tạo ra luồng để nhập xuất với Socket đó là sử dụng lớp

NetworkStream

Trang 18

Trên cở sở của NetworkStream ta có thể nối thêm các luồng để nhập xuất theo hướng

ký tự như StreamReader, StreamWriter

Sau đây là một ví dụ về chương trình Client/Server sử dụng luồng nhập xuất, chương trình Server chép phép Client gửi lên yêu cầu, nếu yêu cầu là GetDate không phân biệt chữ hoa chữ thường thì Server trả về cho Client ngày hiện tại, nếu yêu cầu là GetTime không phan biệt hoa thường thì Server trả về giờ hiện tại, nếu là Quit thì Server ngắt kết nối với Client, không phải các trường hợp trên thì thông báo không hiểu lênh

2.2 Sử dụng các lớp hỗ trợ được xây dựng từ lớp Soket

2.2.1 Lớp TCPClient

Mục đích của lớp UDPClient ở trên là dùng cho lập trình với giao thức UDP, với giao thức này thì hai bên không cần phải thiết lập kết nối trước khi gửi do vậy mức độ tin cậy không cao để đảm bảo độ tin cậy trong các ứng dụng mạng, người ta còn dùng một giao thức khác, gọi là giao thức có kết nối : TCP (Transport Control Protocol) Trên Internet chủ yếu là dùng loại giao thức này, ví dụ như Telnet, HTTP, SMTP, POP3… để lập trình theo giao thức TCP, MS.NET cung cấp hai lớp có tên là TCPClient và TCPListener

- Các thành phần của lớp TcpClient

+ Phương thức khởi tạo:

Trang 19

+ Một số thuộc tính:

+ Một số phương thức:

Trang 20

2.2.2 Lớp TCPListener

TCPListerner là một lớp cho phép người lập trình có thể xây dựng các ứng dụng Server (Ví dụ như SMTP Server, FTP Server, DNS Server, POP3 Server hay server tự định nghĩa ….) Ứng dụng server khác với ứng dụng Client ở chỗ nó luôn luôn thực hiện lắng nghe và chấp nhận các kết nối đến từ Client

Các thành phần của lớp TcpListener:

+ Phương thức khởi tạo:

+ Các phương thức khác

Trang 21

Tuyến (Thread): Trong hệ thống, một tiến trình có thể có một hoặc nhiều chuỗi thực hiện tách biệt nhau và có thể chạy đồng thời Mỗi chuỗi thực hiện này được gọi là một tuyến (Thread) Trong một ứng dụng, Thread khởi tạo đầu tiên gọi là Thread sơ cấp hay Thread chính.

2.3.1 Sử dụng Thread trong chương trình Net

Để sử dụng Thread trong Net ta sử dụng NameSpace System.Threading

- Một số phương thức thường dùng

Trang 22

- Một số thuộc tính thường dùng:

2.3.2 Sử dụng Thread trong các chương trình Server

• Đa tuyên hay được ứng dụng trong các chương trình Server, các chương trình đòi hỏi tại một thời điểm chấp nhận nhiều kết nối đến từ các Client

Để các chương trình Server có thể xử lý nhiều Client tại một thời điểm ta có

mô hình ứng dụng đa tuyến như sau:

Ngày đăng: 07/02/2015, 08:53

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w