
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
C#是托管型代码,创建的对象会自动回收。C++是非托管型代码,创建的对象需要手动回收(有时不手动回收,可能出现内存溢出的问题)。C#调用C++的方式分为两种:(1)采用托管的方式进行调用;Function.h中的代码,一个返回两数之和的方法,一个返回字符串的方法。创建新的c++项目,建立stdafx.h和dllmain.cpp。1.采用托管的方式进行调用,就和正常调用c#的dll一样。点击生成dl

1.先卸载旧版,如果没有的话,就不用执行了,直接第二步。2.在终端输入3.安装证书4.写入软件源信息5.安装中途出现问题的话,使用sudo apt-get update 试试6.启动docker7.安装工具8.重启docker9.测试是否成功,输入sudo docker run hello-world 显示以下信息则成功。 参考:ubuntu 安装 docker 详细步骤_tiahaole的博客-

UDP和TCP都是网络通信中不可缺少的部分,两者在不同的环境中,应用的场景不一样,UDP在网络不好的情况下,传输会丢包,也就是会丢数据,而TCP不会这样,所以重要的数据使用TCP传输,但是TCP对网络的资源消耗非常的大,例如视频,音频等大量的数据,这个时候就选择UDP,因为UDP占用网络资源比较低,就算丢一帧二帧的图像的数据,也不会有影响的。介于单播和广播之间,也叫组播,从名字上面就能知道,建立一

这部分分为3部分。一、2个exe程序之间通信,第一个程序发送消息,第二个程序实时接收消息。二、2个exe程序之间通信,第一个程序发送命令执行第二窗口中的按钮事件。三、2个exe程序之间通信,第一个程序发送消息到第二个程序中的某一个控件中。一,2个exe程序之间通信,第一个程序发送消息,第二个程序实时接收消息。1.建立第一个程序,界面如下2.代码using System;using System.C

在实际开发中,我们需要用配置文件,这里说一下使用xml文件配置的方法。1.建立一个xml文件夹<?xml version="1.0" encoding="utf-8" ?><SystemParameter><A desc="AAAAA"><A1 desc="A1">A</A1><A2 desc="A2">A2</A2&g

1.StackPanel控件,会充满空间水平布局<StackPanel Orientation="Vertical"><Button Content="Button"/><Button Content="Button"/><Button Content="Button"/></StackPanel>垂直布局<StackPan

当窗体大小变化时,窗体内的控件随着窗体的变化而变化。1.建立一个winform项目2.拖动控件后,对界面进行布局3.代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using Sys

4.我们对比方法一和方法二发现,他们的结果都是一样的,但是lock似乎比SemaphoreSlim更加的高效,是的,lock解决此业务的确比SemaphoreSlim高效。SemaphoreSlim是一个用于同步和限制并发访问的类,和它类似的还有Semaphore,只是SemaphoreSlim更加的轻量、高效、好用。当我们在第1步,只需要增加一句话,不增加lock和SemaphoreSlim,依

最完美的是最后一个。在输入数据的时候,数据验证是必不可少的一部分,提高用户的交互性和使用性。看了很多数据验证的,而且官网的demo也有问题(切换点击的时候,会产生白色的点),本人进行一一整理和对比。首先验证有3种,本文只说2种,另一种性能比较低,就不说了。分别是IDataErrorInfo和ValidationRule。

然后在具体的方法上面,增加角色,也就是只有admin才能访问这个方法,其他用户不能访问,就是200,其他用户访问就是401,当然这是在postman里面操作的。也可以把Token的值放在Headers中,增加Authorization,还需要加bearer,后面加空格。当我们把字符串复制到JWT官网,就可以是明文的,所以千万不要写账号和密码,如果要写,就再加密一层。7.关键时刻,此时建立一个Use








