WEB开发网
开发学院手机开发Windows Mobile 开发 Windows Mobile 使用 .NET Compact Framework 开发... 阅读

Windows Mobile 使用 .NET Compact Framework 开发多线程程序

 2010-03-10 16:36:00 来源:WEB开发网   
核心提示:背景多任务成为计算机哪怕是智能设备基本的功能,iPhone不支持多任务一直为使用者所鄙视,Windows Mobile 使用 .NET Compact Framework 开发多线程程序,以Windows Embedded CE作为基础的Windows Mobile从系统层就支持多任务,其中表现为多线程和多进程,实现开

背景

多任务成为计算机哪怕是智能设备基本的功能,iPhone不支持多任务一直为使用者所鄙视。以Windows Embedded CE作为基础的Windows Mobile从系统层就支持多任务,其中表现为多线程和多进程。从泄漏的文档看,Windows Phone 7 Series 还是一如既往的支持多任务。

简介

虽然说经济危机过去,经济开始回暖,失业率下降,可是工作还是不太好找,特别是Windows Embedded CE和Windows Mobile等相关嵌入式和移动智能设备的工作买少见少。在最近零星的面试中问及比较多的其中一个问题是多线程的开发。因此这个long weekend把多线程的程序总结一下,为后续的面试做准备。

实现

开发环境

mutilthreading-net-compact-framework-1
 
mutilthreading-net-compact-framework-2

Environment: Visual Studio 2008 + .NET Compact Framework + C# 3.0 + Windows Mobile 5.0 R2 professional (VS 2008 built-in)

Start threads

private void StartThreading(){ UpdateMessageList("Start threading..."); menuItem1.Text = "Stop"; started = true; Thread handlerThread = new Thread(HanlderThreadProc); //use delegate ThreadStart to start a new handler thread Thread requtesterThread = new Thread(RequesterThreadProc); //Start a new requester thread handlerThread.Name = "Hanlder"; requtesterThread.Name = "Requtester"; handlerThread.Start(); requtesterThread.Start();}

Start two threads, one is requester that is responsible to send request and the other is handler thread which is used to handle the request.

启动两个线程,一个负责发请求,一个负责处理请求。

Requester thread

//Requester threadprivate void RequesterThreadProc(){ int i = 0; string messageBody = ".NET"; while (started) { if (i > 1000) { i = 0; } Message msg = new Message(i, messageBody); //lock when try to access shared resource. lock

1 2  下一页

Tags:Windows Mobile 使用

编辑录入:coldstar [复制链接] [打 印]
赞助商链接