摘要: 多线程编程过程中,难免会涉及到资源共享的问题,在并发的线程中,如果不对线程加以控制,线程抢夺共享资源,对资源的读取和修改混乱,结果会导致不是我们想要的结果,这就需要引入线程同步的技术。 先演示下没有同步技术的案例: 当执行LockTest() 方法之后,打印出的counter的值则是错乱的: 下面开 阅读全文
posted @ 2017-08-31 16:05 bdcliang 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 1.线程的创建新建线程通常分为两种:带参数的线程和不带参数的线程,不过建立起来都很简单://不带参数 public static void SetUpThread() { Thread t = new Thread(new ThreadStart(() => { Console.WriteLine("====="); ... 阅读全文
posted @ 2017-08-31 11:00 bdcliang 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 在winform 中我们使用GDI+ 进行绘图,到了WPF, 使用的是DirectX渲染,所以不能使用GDI+ 进行绘图, 但是其实WPF中也是有绘图单元的,本文用DrawingVisual 来进行基础的绘图,在一张图片上进行画正弦信号图: 看下效果: 阅读全文
posted @ 2017-07-25 15:40 bdcliang 阅读(5482) 评论(0) 推荐(4) 编辑
摘要: 1 本例开始,定义一个personx 类,怎么实现 2 personx p=new personx(); 3 int age=p; 4 或者 5 p=100; 6 7 这是把personx实例直接赋值给整形,或者反之,把一个引用类型赋值给值类型,正常编译器会直接报错,不允许通过编译的,但是C#的类型重载却可以为我们提供一种实现。 8 9 class Personx:... 阅读全文
posted @ 2017-07-05 09:09 bdcliang 阅读(1238) 评论(0) 推荐(0) 编辑
摘要: C# 串口操作很简单,直接设置串口的参数之后即可读写数据:using System; using System.Collections.Generic; using System.Text; namespace LLIO { /// /// /// public sealed class LLSerialPort { private... 阅读全文
posted @ 2017-06-09 16:07 bdcliang 阅读(3968) 评论(0) 推荐(0) 编辑
摘要: C++ 属于面向对象的编程语言,OOP的思想不必多说,特别对于复杂的软件工程来说,利用OOP绝对是事半功倍,相对于传统的C来说; 当然用C来写单片机程序无可厚非,已经延续了一个传统,从大学时学的开始到工作岗位,好多人都是一直用C来做,但是既然Keil支持C++编译, 可以用C++来编写你的代码,可以 阅读全文
posted @ 2017-06-06 08:59 bdcliang 阅读(19800) 评论(1) 推荐(0) 编辑
摘要: class StaticClass { public static string Name { get; set; } static StaticClass() { Name = "Delphi"; } public StaticClass() { ... 阅读全文
posted @ 2017-02-03 11:36 bdcliang 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 1 SimpleIoc 是一个简单依赖注入容器; 2 3 例:Mainviewmodel需要使用一个服务或类,假设我需要的person类 4 5 首先将实现的服务注册到SimpleIOC, 6 SimpleIoc.Default.Register(()=>new Person()); 7 然后把Mainviewmodel也注册到SimpleIOC, 8 SimpleIoc.D... 阅读全文
posted @ 2016-03-23 11:30 bdcliang 阅读(4485) 评论(0) 推荐(1) 编辑
摘要: //时钟配置void RCC_Configuartion(void){ RCC_APB2PeriphClockCmd(RCC_AHBPeriph_DMA1,ENABLE);//打开DMA1时钟}//中断管理配置void NVIC_Configuration(void){ NVIC_InitT... 阅读全文
posted @ 2016-01-25 14:11 bdcliang 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 基于中断方式延时效果1.SysTick配置void SysTick_Init(void){/* SystemCoreClock / 1000 1ms* SystemCoreClock / 100000 10us* SystemCoreClock / 1000000 1us*/while(Sys... 阅读全文
posted @ 2016-01-25 13:15 bdcliang 阅读(347) 评论(0) 推荐(0) 编辑

bdcliang