- 博客(102)
- 资源 (1)
- 收藏
- 关注
原创 [c语言]webview[webkit2gtk]中绑定js函数,让网页端调用c函数
这里的webview 是一个封装好的跨平台web浏览器,基于webkit2gtk,github地址:https://github.com/webview/webview// main .c#include "webview.h"void hello(const char * x ,const char *y ,void * );#ifdef WIN32int WINAPI WinMain(HINSTANCE hInt, HINSTANCE hPrevInst, LPSTR lpCmdLi
2020-12-05 00:33:17
15
原创 Flutter Macos Desktop 禁止修改窗体大小
目标: 不允许用户修改应用大小,导致布局出错。用XCode 打开路径:[FlutterProject]/macos打开文件:Runner/MainFlutterWindow.swift将代码替换为:import Cocoaimport FlutterMacOSclass MainFlutterWindow: NSWindow { override func awakeFromNib() { let flutterViewController = Flutter
2020-10-18 04:11:36
56
原创 Flutter Desktop 开发之 Flutter-Desktop-Embedding.Plugins.windiow_size
由于国内 Flutter 开发 Desktop 的资料特别少,在开发过程中,遇到了各种问题,特此记录。需求来源于为了更好的控制窗体内的布局区域,需要将应用窗体设置为固定尺寸。为设置应用窗体尺寸找到Flutter-Desktop-Embedding 项目,这个项目是google 自己搞的一些非正式插件仓库,并没有发布到pub仓库中,所以没有办法直接 pub get 了,里面东西不多,正好有我需要的跨平台 window_size 插件,二话不说,安装先。仓库地址:https://gitee.co..
2020-10-18 00:17:17
138
原创 关于 Flutter Websocket 跨域问题
websocket 服务已经是非常熟悉的东西了,但是今天仍然被一个问题困了很久。主要是在Websocket 跨域的问题上。今天在本地用golang的官方包写了一个简单的websocket server,写完后通过浏览器执行js的方式测试OK,然后打算把flutter也接上。可是在flutter上通过 WebSocket.connect的时候,一直提示错误。 WebSocketEx...
2020-03-11 15:28:24
1551
2
原创 golang 小工具,导入csv到Mysql
一个导数据的小工具,很久没写golang了,现学现卖,一开始写了版同步版本的,12万数据处理了2个小时,然后写了版协程的,5分钟处理完了。随手记录一下。应该还有优化的空间。package mainimport ( "bufio" "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" "io" "log" "...
2020-03-05 21:24:01
484
原创 来自2019年1月4号的学习总结
这几天针对高性能,强顺序的MQ产品进行了测试和选型,主要针对的是apache kafka和apache rocketmq 两款产品。对两端产品的特性做一个简单的阐述:rocketmq 是国内阿里巴巴出产,来自大厂,听说经过双十一洗礼,稳定可靠,主要针对电商场景,支持事务消息,支持延迟消息(用于付款),支持多副本(高可用),消息严格有序,性能测试与kafka不相上下,异步刷盘和同...
2020-03-02 23:49:43
49
原创 golang + dart grpc 学习总结
今天本来想用dart做一些native的小工具,但是准备开始写的时候才发现dart的生态的确还欠缺很多,dart连获取自身运行时内存信息的方法都没有,别提执行shell或其他监控了。那么,如果dart自身不行,能不能通过已有的工具组合起来为dart提供服务呢?毕竟dart的 isolate 自动释放内存和安全的内存隔离是一个亮点,而且还能通过主线程控制其他的isolate空间,等于一个 FPM,如...
2020-02-28 18:01:16
654
1
原创 Stream 异步学习
可以通过 await for 循环来读取 stream 的数据,在循环结束时也是stream关闭的时候,反之亦然。 在一个stream 方法中,通过 yield 向await for 传递消息 stream 可以通过 listen 方法来监听 通过对函数声明 async* 表示该函数是一个stream,参考代码1 listen方法会返回 StreamSubscription 对象,可以通过...
2020-02-27 17:10:55
349
原创 dart future学习总结
可以通过声明 Future 和 async 关键字来声明异步函数 异步函数可以再同步函数中执行,重点是虽然函数执行了,但是Future 不一定会有结果 异步函数总是返回Future 对象,如无显示声明,则会隐式包裹一个Future 对象 可以通过 Future.catchError 捕获异步错误 可以通过 Future.delayed 方法延迟执行 在dart中,有一个主事件循环,在事件...
2020-02-27 14:40:10
129
原创 flutter 1.12 Provider 4.0 可以不必挂载到顶部节点使用
最近在开发app时遇到了一个图片选择的功能,在app端使用image_picker插件后出现了整页重绘造成的闪屏问题,所以就采用了官方推荐的 Provider 方式控制重绘,简单使用了 notify -> consumer 的方式,效果虽然达到了预期,但是随之而来的问题是Provider 组件在官方说明上要求挂载到顶部根节点,可是万一app中需要使用的notify 多了怎么办呢?毕竟有一些N...
2020-02-26 10:18:12
1728
转载 巩固一下,面向对象的设计原则
面向对象设计原则:OOPS(Object-Oriented Programming System,面向对象的程序设计系统),面向对象编程的特性“抽象”、“封装”、“多态”、“继承” 等。1.单一职责 SRP(The Single Responsibility Principle) 一个类或接口的职责明确且唯一,即“高内聚,低耦合”;2.开闭原则 OCP(The Open Clos...
2020-02-25 10:16:14
41
原创 flutter dio设置代理
(_dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate = (client) { client.findProxy = (url) { ///设置代理 电脑ip地址 return "PROXY 192.168....
2020-02-23 13:06:20
1405
2
转载 flutter 插件开发数据类型
平台通道数据类型支持平台通道使用标准消息编/解码器对消息进行编解码,它可以高效的对消息进行二进制序列化与反序列化。由于Dart与原生平台之间数据类型有所差异,下面我们列出数据类型之间的映射关系。Dart Android iOS null null nil (NSNull when nested) bool java.lang.Boolean NS...
2020-02-23 01:09:53
303
原创 flutter 1.12 版本插件开发与获取权限总结
开发流程:1、使用object-c和java语言模板创建插件项目,command line : flutter create --template=plugin -i objc -a java mobile_state关键文件://这里是你的插件在dart 中引用的类文件,也就是衔接native的dart插件类lib/mobile_state.dart//这里是你的插件对应的...
2020-02-22 08:11:26
2970
7
转载 PSR代码规范
代码必须使用4个空格的缩进,而不是制表符 在namespace声明下面必须有一个空行,并且use声明代码块下面必须有一个空行 类的左花括号必须放到下一行,右花括号必须放到类主体的下一行 方法的左花括号必须放在下一行,右花括号必须放在方法主体下面 所有的属性和方法必须有可见性(public,protected,private)声明;abstract和final声明必须在可见性之前;stati...
2020-02-17 18:48:31
86
转载 转:巩固mysql 字段的显示宽度
MySQL 显示宽度1. MySQL 数字类型默认有符号类型还是无符号类型?答案:有符号类型Numeric data types that permit the UNSIGNED attribute also permit SIGNED. However, these data types are signed by default, so the SIGNED attribute ...
2020-02-17 18:45:07
78
转载 转:mysql中安全模式sql_safe_updates
1.什么是安全模式在mysql中,如果在update和delete没有加上where条件,数据将会全部修改。不只是初识mysql的开发者会遇到这个问题,工作有一定经验的工程师难免也会忘记写入where条件。为了避免失误造成的数据全部修改和删除,可开启mysql的安全模式。3.查看安全模式show variables like "%safe%"sql_safe_updates就是数...
2020-02-15 16:45:41
77
原创 golang websocket 示例
websocket 包:golang.org/x/net/websocketpackage mainimport ( "fmt" "golang.org/x/net/websocket" "net/http");func echoHandler(ws *websocket.Conn) { defer func() { if r := recover();...
2020-02-13 20:57:21
134
转载 JS Websocket 常用代码
var ws = new WebSocket("ws://localhost:9990/ws"); //readyState属性返回实例对象的当前状态,共有四种。 //CONNECTING:值为0,表示正在连接。 //OPEN:值为1,表示连接成功,可以通信了。 //CLOSING:值为2,表示连接正在关闭。 //CLOSED:值为3,表示连接...
2020-02-13 20:55:14
162
转载 转:YII2解决POST数据时因启用Csrf出现的400错误
很久没有写前端了,备注一下。第一种解决办法是关闭Csrfpublic function init(){ $this->enableCsrfValidation = false;}第二种解决办法是在form表单中加入隐藏域<input name="_csrf" type="hidden" id="_csrf" value="<?= Yii::$app...
2020-02-10 12:44:20
81
转载 转:mysql8 json 方法罗列
一、方法罗列:分类 函数 描述创建jsonjson_array 创建json数组json_object 创建json对象json_quote 将json转成json字符串类型查询jsonjson_contains 判断是否包含某个json值json_contains_path 判断某个路径下是否包json值json_extract 提取json值column->pat...
2020-01-29 01:04:42
343
转载 转mysql8 my.cnf文件
# Example MySQL config file for very large systems.## This is for a large system with memory of 1G-2G where the system runs mainly# MySQL.## MySQL programs look for option files in a set of...
2019-12-23 02:30:47
842
转载 转-事件驱动模型和异步IO多路复用
转自https://www.cnblogs.com/sunhao96/p/7873842.html最近又接触IO多路复用的问题,这里将学习资料作为备份保留一下,感谢作者分享和总结。事件驱动模型协程:遇到IO操作就切换。但什么时候切回去呢?怎么确定IO操作完了?很多程序员可能会考虑使用“线程池”或“连接池”。“线程池”旨在减少创建和销毁线程的频率,其维持一定合理...
2019-06-16 17:01:30
42
转载 Docker 学习之命令详解
Docker 学习之命令详解如果各位看官熟悉 Git 和 GitHub ,可与 Docker 做个类比,可更加容易理解 Docker 和 Docker Hub 及两者关系。1. docker versiondocker version显示 Docker 版本信息。2. docker infodocker info显示 Docker 系统信息,包括镜像和容器数。...
2018-08-21 21:02:20
136
转载 docker php-fpm 安装redis 扩展
直接RUN docker-php-ext-install redis 失败,google得到:ENV PHPREDIS_VERSION 3.0.0RUN mkdir -p /usr/src/php/ext/redis && curl -L https://github.com/phpredis/phpredis/archive/$PHPREDIS_VERSION.tar....
2018-08-21 20:33:19
4233
原创 一次php fopen,fwrite,fclose和file_put_contents性能的测试
file_put_contents,不仅可以传入字符串,还可以传入对象、资源、数组等其他类型,函数内部会进行转换并且校验,还会检查文件写锁,而fwrite只接收字符串参数并且不进行判断,直接向传入的file_handle写入数据,但是他们最终都是通过php_stream系列的函数进行文件写入,调用的是系统的低层io,posix write,所谓文件缓存,只是让数据保存在内存中,每次截取8k大小写入...
2018-06-10 11:53:20
1040
原创 一次php5.6的error_log函数跟踪
笔记有点乱,先记下,改天再整理。PHP:error_log(self::formatMessage(), self::$_fileLog, self::$_logFilePath . date('YmdH'));转换后:formatMessage():$this->_logParams['time'] = date("Y-m-d H:i:s");//Data_Util::getmicroti...
2018-06-10 03:43:34
411
转载 数组与指针的解析 -- 摘自CSDN论坛回复
问题:比如,现在有一维数组定义如下:int arr[5]={1,2,3,4,5};我们都知道 数组名arr是代表数组首元素的地址即arr[0]的地址。 那在数组名前面加上取地址符&,即&arr,打印出的地址同样也是arr[0]的地址。 比如 printf("arr=%x\n&arr=%x\n&arr[0]=%x\n", arr, &ar...
2018-05-23 01:44:29
104
转载 C语言-- 内存区域摘录
使用C语言编程,实际上使用的内存只有一种——虚拟内存。根据功能的不同在C语言中又将虚拟内存为分三类:栈区、堆区、静态数据区,无论单一变量还是数组,其内存分配都是如此。其中,栈区、静态数据区、堆区都会有编译器负责分配、操作系统负责管理,程序员可以在堆区使用malloc()来动态分配堆内存。1、栈区:一般每一个函数对应一个栈区,在编译原理中称为栈帧。比如下面的代码:123456int main(){/...
2018-05-23 01:36:38
96
原创 关于C语言字符串指针的一点点总结
一直在看指针的资料,今天实践了一次字符串指针的操作,做一个简单的总结。代码如下,:char * x = "abcd"; //声明一个字符类型的指针x 指向一个字符串需要特别注意的地方为:1、指针类型为char ,指针的类型决定了这个指针指向数据的类型;2、指针变量 x 自身是有变量地址的,也就是说 x 变量作为一个变量,有自己的内存地址。 那么,这里的赋值语句可以理解为 指针变量x的内存...
2018-05-23 01:35:22
1360
原创 记一次static 入门
刚开始用C操作MYSQL,完事具备,代码也核对了很多遍,就是报错,gcc 编译通过,但是执行时 提示 Can't create UNIX socket用Clion 写好了CMakeLists ,编译通过但是执行总是报错Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)lib include 检查了很多次,没...
2018-05-22 01:59:27
136
转载 CMAKE的使用
转载自:点击打开链接一、 基本使用安装:下载二进制包后可直接解压使用从源码安装则执行命令:./bootstrap; make; make install——尝试执行bootstrap失败使用:cmake dir_path,生成工程文件或makefile文件二、 概念out-of-source build,与in-source build相对,即将编译输出文件与源文件放到不同目录...
2018-05-22 00:11:56
122
原创 高并发:linux内核网络优化
今天做MQ benchmark 遇到了TCP 和socket 连接数限制问题,环境 ubuntu 16.04.socket 连接数很简单修改,ulimit -n ; ulimit -SHn 65535;linux服务器内核网络参数优化: http://blog.51cto.com/anonymouse/1890525高并发socket/tcp网络最大连接数所受的限制问题,ulimit文件打开数,文...
2018-04-29 17:28:08
2348
转载 为什么要内存对齐
转自:https://blog.csdn.net/l_tudou/article/details/51999765 当我们听到”内存对齐“这个概念时,从字面意思来看,很容易理解。那就是让内存按一定规则对齐。 当然 就会有人说 你这不是废话 ?? 现在我就来说一说为什么要内存对齐以及怎么个对齐法(如何对齐)? 首先来谈谈什么叫内存对齐!!我百度了一下如下解...
2018-04-24 22:59:35
1740
转载 遇到了双系统中win下关闭了wifi,ubuntu中也无法启用的情况
转自:https://www.cnblogs.com/mcy0808/p/5415689.htmlrfkill list all 会出现如下提示 0:ideapad_wlan: Wireless LAN Soft blocked: no Hard blocked:yes 1:ideapad_bluetooth: Bluetooth Sof...
2018-04-17 00:07:32
373
转载 从0到1,苏宁API网关的演进之路
转载仅为回顾学习。文章转载自: 聊聊架构 聊聊架构作者:何翔策划:Natalie2012 年,在开放云融推动各产业全面发展的大背景下,苏宁 API 对外开放。基于苏宁各内部业务系统的资源,开放丰富的 API 服务,提供给苏宁商家、供应商、售后服务商、物流公司、软件服务商等合作伙伴所需的数据和信息。实现外部系统与苏宁的完美对接,使业务的处理更加高效、便捷。通
2017-12-13 10:26:47
884
转载 解读EXPLAIN执行计划中的key_len
EXPLAIN执行计划中有一列 key_len 用于表示本次查询中,所选择的索引长度有多少字节,通常我们可借此判断联合索引有多少列被选择了。在这里 key_len 大小的计算规则是:一般地,key_len 等于索引列类型字节长度,例如int类型为4-bytes,bigint为8-bytes;如果是字符串类型,还需要同时考虑字符集因素,例如:CHAR(30) UTF8则key_len
2017-05-29 12:08:04
349
转载 在Windows的CMD中如何设置支持UTF8编码
这个问题很多人开始都会不知道,当然包括曾经的我,当用到的时候,只好求助于伟大的股沟和度娘了。网上有设置的方法,但说明确不够详细系统,说设置字体为:Lucida Console。问题是,在默认方式下,只有点阵字体,哪有什么Lucida Console。所以,在自己成功设置后,拿出来和大家分享下过程,下面就让我们找出Lucida Console来设置吧。 这里需要先了解些内容:CHCP
2017-05-20 11:30:49
269
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝