波斯马BOSSMA Information Technology

2010年 发布的所有日志

C#通信之Socket通信的简单例子

发布时间:2010年9月11日 / 分类:DOTNET / 3 次吐槽

socket通常也称作”套接字”,用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过”套接字”向网络发出请求或者应答网络请求。 这里构建一个简单的例子,客户端发消息,服务端接收,然后回执一条消息。大致能够了解如何使用Socket进行通信。 服...

C#排序算法之希尔排序(shellsort)

发布时间:2010年9月10日 / 分类:DOTNET / 抢沙发

希尔排序(shellsort)又叫增量递减(diminishing increment)排序,是对直接插入排序的优化,由D.L. Shell发明,这个算法是通过一个逐渐减小的增量使一个数组逐渐趋近于有序从而达到排序的目的。 希尔排序对数据进行分组,每个分组进行直接插入排序。 增量是每个分组中紧挨着的前...

多线程面试问题:顺序输出多个ABC序列

发布时间:2010年9月10日 / 分类:DOTNET / 抢沙发

多线程面试问题:顺序输出多个ABC序列,不使用Sleep。本来多线程是用来更高效的利用CPU的时间,所以执行的顺序是不太好控制的。这里不对这个问题的意义进行评述,说一下解决方案。参考了java的解决方案,主要方法就是指定下一个输出的字符,然后再输出的方法里边判断是不是当前...

C#排序算法之鸡尾酒排序

发布时间:2010年9月9日 / 分类:DOTNET / 抢沙发

鸡尾酒排序,也就是定向冒泡排序, 鸡尾酒搅拌排序, 搅拌排序 (也可以视作选择排序的一种变形), 涟漪排序, 来回排序 或者 快乐小时排序, 是冒泡排序的一种变形。此演算法与冒泡排序的不同处在于排序时是以双向在序列中进行排序。 参照百度百科,整了一个C#版本的,看下边的代码...

C#排序算法之冒泡排序、选择排序、插入排序

发布时间:2010年9月9日 / 分类:DOTNET / 抢沙发

这篇文章介绍C#实现的几种最简单的排序方法:冒泡排序、选择排序、插入排序,并简单测试了一下性能。排序在编程中占有很重要的位置,一定程度上体现了编程的功底。虽然学习过一段时间,感觉这东西总是记不住,时间长了就忘了或者搞混了。搞混了问题还不大,忘了就比较严重了。 ...

WinForm(C#)中跨线程访问控件的解决方法

发布时间:2010年9月6日 / 分类:WinForm / 2 次吐槽

由于多线程可能导致对控件访问的不一致,导致出现问题。C#中默认是要线程安全的,即在访问控件时需要首先判断是否跨线程,如果是跨线程的直接访问,在运行时会抛出异常。 解决办法有两个: 1、不进行线程安全的检查 2、通过委托的方式,在控件的线程上执行 public partial cl...

C#中的常量:const和readonly

发布时间:2010年9月5日 / 分类:DOTNET / 抢沙发

C#中的常量有两种: const readonly const在声明的时候就需要赋值,否则编译出错。 readonly可以不赋值,赋值的话只能在声明时(可以是静态变量或者常量),或者构造函数中赋值(可以是变量或者常量)。 看下边的例子: ?public class Class1 ??? { ??????? public const s...

c#(WinForm)遍历局域网计算机(电脑)获取IP和计算机名称

发布时间:2010年8月25日 / 分类:ASP.NET, WinForm / 抢沙发

c#可以遍历局域网计算机,获取全部计算机的名称和IP地址,网上提供了相关的几种方法,并对效率进行了比较,但是没有对各种方法进行比较,以确定可以使用的情况。这篇文章将对这几种方法进行分析,以帮助了解各种方法适用的情况。 using System; using System.Collections.Gene...

使用Ajax(Jquery)定时更新表格的某一列

发布时间:2010年8月23日 / 分类:JavaScript / 抢沙发

在CSDN论坛上看到一个问题:定时更新GridView的某一列中的状态文本。马上就有了思路:GridView最后会生成表格,所以我们在页面中通过Ajax更新表格的列,从而达到ajax更新GridView的效果。 具体实现: 准备一个xml文件,用于存储要更新的数据,在页面中启动一个定时器,每隔5秒...

DataGridView(WinForm)中实现行的上下移动

发布时间:2010年8月19日 / 分类:ASP.NET, WinForm / 2 次吐槽

DataGridView(WinForm)中实现行的上下移动。模拟了20条数据,绑定到DataGridView,点击向上按钮,数据行向上移动一行,点击向下,数据行向下移动一行。 显示效果: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; u...