摘要: 若需要修改则可以打开配置文件,操作节点属性。App.config 配置文件是项目自带的xml文件, 可以使用 .net自带的类ConfigurationManager去访问,但首先需要引入System.Configuration 类库。在该配置文件中,常用的配置节点有3种: 1. 数据库连接字符串节 阅读全文
posted @ 2019-08-14 17:36 Change_Myself 阅读(928) 评论(0) 推荐(0) 编辑
摘要: 使用StopWatch类,可以计时,需引入System.Diagnostics 命名空间。 运行结果: Main Start....time elapsed 3004Main end....00:00:03.0093181 阅读全文
posted @ 2019-08-11 13:42 Change_Myself 阅读(4764) 评论(0) 推荐(0) 编辑
摘要: 实际应用中多个线程往往需要共享数据,因此必须使用同步技术,确保一次只有一个线程访问和改变共享数据。同步又分为进程内部线程的同步以及进程之间线程的同步。 进程内部线程同步: 1. lock : 使用比较简单 lock(obj){ Synchronize part }; 只能传递对象,无法设置等待超时; 阅读全文
posted @ 2019-07-20 12:59 Change_Myself 阅读(13599) 评论(0) 推荐(2) 编辑
摘要: 1. 资源竞争 当多个同时执行的线程需要同时对全局变量进行写读操作时,容易出现资源竞争的问题,导致运行结果出现多种情况。以下面的例子进行说明: 大多数情况,运行结果如下: Main Start....TaskId 1 Excute other code....num is 5TaskId 2 Exc 阅读全文
posted @ 2019-07-10 14:54 Change_Myself 阅读(2332) 评论(0) 推荐(0) 编辑
摘要: Parallel 类定义了并行运行的静态For(), Foreach(), Invoke()方法, 其中For(), Foreach() 多次调用同一个方法,方法返回值均为ParallelLoopResult,而Invoke()可同时调用多个不同的方法,无返回值。 For(), Foreach()方 阅读全文
posted @ 2019-07-08 14:33 Change_Myself 阅读(549) 评论(0) 推荐(0) 编辑
摘要: 1. 线程池 创建,释放线程都需要消耗很多时间,所以如果有许多的用时较短的小任务需要同时完成且不需要过多的控制,则可以选择线程池来实现,即ThreadPool类. 对于线程所执行的任务来说,可以把线程分为两种类型:工作者线程和I/O线程。工作者线程用来完成一些计算的任务,在任务执行的过程中,需要CP 阅读全文
posted @ 2019-07-03 16:54 Change_Myself 阅读(3146) 评论(0) 推荐(0) 编辑
摘要: 1. Thread类创建线程 该类的构造函数可以接受ThreadStart委托参数(定义了无参,返回void的函数),以及ParameterizedThreadStart委托参数(定义了Object参数,返回void的函数)。 当然Thread类也可以和Lamda表达式一起使用,实现与上面同样的功能 阅读全文
posted @ 2019-07-02 09:43 Change_Myself 阅读(7791) 评论(0) 推荐(0) 编辑
摘要: 创建线程一种简单的方式是委托的异步调用,Delegate类提供了BeginInvoke方法,该方法可以传递委托类型定义的参数(所以BeginInvoke参数数量是可变的),另外还有2个固定的参数 回调函数委托AsynsCallBack和类型Object(如果不使用可直接赋值为null)。 Begin 阅读全文
posted @ 2019-06-30 11:29 Change_Myself 阅读(1029) 评论(0) 推荐(0) 编辑
摘要: 浅表拷贝得到一个新的实例,一个与原始对象类型相同、值类型字段相同的拷贝。但是,如果字段是引用类型的,则拷贝的是该引用, 而不是的对象。若想将引用字段的对象也拷贝过去,则称为深拷贝。 1.System.Object提供了受保护的方法 MemberwiseClone,可用来实现“浅表”拷贝。由于该方法标 阅读全文
posted @ 2019-06-01 11:20 Change_Myself 阅读(1230) 评论(0) 推荐(0) 编辑
摘要: 1.XPath详解 1)"/bookstore/book/price"XPath的开头是一个斜线(/)代表这是绝对路径,这可以选出所有路径符合这个模式的元素。这代表选出所有bookstore根节点下的book元素下的price元素。2)"//title"开头是两个斜线(//)表示文件中所有符合模式的 阅读全文
posted @ 2019-05-20 10:35 Change_Myself 阅读(2357) 评论(0) 推荐(0) 编辑