自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 PHP yield

next():执行一次yield之后的代码直到下一次yield停止,yield 下边的代码不会执行 (若是Generator创建之后第一次执行此方法,则会从Generator内开始处到第一次yield出现的地方,相当于rewind() 一次,然后再往第一个yield下面继续执行一次,直到遇到第二个yield停止)rewind():重置Generator状态回到最开始状态,即第一个yield 执行前。yield from:后面跟一个数组,创建一个临时Generator实例,依次返回。

2023-10-19 17:40:03 461

原创 ES6 使用多个Promises并发后阻塞等待所有结果的示例

ES6的Promise并发和阻塞

2022-12-08 16:47:40 556 1

原创 Promise then、 catch连贯操作

const p = new Promise((resolve, reject)=>{ if ( false ) { reject(new Error("failed !")); } else { resolve("succes !"); }}).catch((e)=>console.log("error catched > ", e)).then((f)=>console.log("n1",f)).then((f)=&.

2022-05-21 23:35:08 305 1

原创 es6 promise reject 连贯操作

catch后跟then,then仍然会被执行const p = new Promise((resolve, reject)=>{ if ( true ) { reject(new Error("failed !")); } else { resolve("succes !"); }}).then((f)=>console.log(f)).then((f)=>console.log(f)).then((f)=>con

2022-05-21 22:50:17 218

原创 Promise usage

Promise 链式then、catch的使用,以及返回的Promise对象const myPromise = new Promise((resolve, reject) => { if (Math.random() > 0) { console.log('resolving the promise ...'); resolve('Hello, Positive :)'); } reject(new Error('No place .

2022-05-21 08:19:09 113

原创 go chan goroutine send & receive

/** * 结论: * chan 在 goroutine间通信时,一定read/write 次数要匹配 * 不然会deadlock * 终止时,send 调用close,receive 判断返回的 bool false 为关闭 */func tChanCom() { done := make(chan struct{}) c2 := make(chan int) arr := []int{0,1,2,3,4,5,6,7,8} arr1 := []int{10,11,12,13,14,.

2022-01-29 10:12:07 642

原创 go chan deadlock

package mainimport ( "fmt")func main() { done := make(chan struct{}, 4) exit := make(chan struct{}) go func () { //defer close exit 依然会deadlock //done 通道只有1次write,有2次read //done 则在exit close前先产生deadlock defer close(exit) fmt.Println(".

2022-01-29 08:58:49 640

原创 golang sync waitGroup range loop

func cGo() { arr := []string{"a", "b", "c", "d"} var w1, w2 sync.WaitGroup for _, s := range arr { fmt.Println(s) w1.Add(1) switch s { case "a", "b", "c": go func() { for i := 0; i < 10; i++ { w2.Add(1) go func() { tim.

2022-01-28 16:15:09 395

原创 golang chan select goroutine

func main() { //下面make也可以不指定 size 3 done := make(chan struct{}, 3) go func () { fmt.Println("goroutine start") //注释下面1行,则只有1次写入,则一定不会输出"{}, true" done <- struct{}{} done <- struct{}{} for { select{ case v, ok := <-don.

2022-01-28 14:39:43 628

原创 go 修改开源代码感悟

1、基础组件如果要共享用大写开头,像数据库连接(池)2、基础组件一定不要涉及任何业务代码,否则后期扩展和分离完全没有可能,除非做非常大的重构

2022-01-13 23:26:00 191

原创 go json Marshal 序列化 mongdb bson.M

package mainimport ( "fmt" "encoding/json")func main() { pk := "to_id" fs := map[string]int{"_id": 0, pk:0} jsonString, _ := json.Marshal(fs) fmt.Println("before:", fs) fmt.Println("after:", string(jsonString)) //convert to new map[string]in.

2022-01-13 22:17:48 772

原创 go map 并发 concurrent 锁

var ( count int)//全局变量并发写 导致计数错误func vari() { for i := 0; i < 10000; i++ { go func(i int) { count++ fmt.Println("count:", count) }(i) } fmt.Println(count)}//Output:/** 总共只有9571行,正确的话应该有 10000行count: 1...count: 9616count: 96177.

2022-01-12 21:25:36 331

原创 go struct &初始化

package mainimport "fmt"type Rect struct { x, y float64 width, height float64}func main() { rect2 := &Rect{} fmt.Println("rect2 %v", rect2)}//Output: rect2 %v &{0 0 0 0}

2022-01-11 20:26:26 574

原创 go uint8 和 byte 完全一样 完全等价 类型别名

package mainimport "fmt"func main() { var a1 uint8 = 1 var a2 byte = 1 b := a1 == a2 fmt.Println("Hello world!",b)}//Output: Hello world! true

2022-01-07 17:03:30 477

原创 go map init

package mainimport "fmt"func main() { var m map[string]int m = map[string]int{"n":1} fmt.Println("Hello world!",m["n"])}//Output: Hello world! 1

2022-01-06 20:57:01 239

原创 golang const iota match int in switch case 匹配 const

package mainimport "fmt"const ( TYPE_NUMBER = iota + 1 //tinyint, smallint, mediumint, int, bigint, year TYPE_FLOAT //float, double TYPE_ENUM //enum TYPE_SET //set TYPE_STRING //other)func main(.

2022-01-06 20:29:21 203

原创 golang struct nested 嵌套struct

package mainimport "fmt"type People struct{ name string age int8}type Employee struct{ profile *People salary float32}func main() { p := &People{ name: "Mr.Lee", age: 32, } e := &Employee.

2022-01-06 20:17:35 664

原创 go for 循环变量的作用域

package mainimport "fmt"func main() { array := [3]int{1,2,3} for _, a := range array { fmt.Println(" loop :", a) } fmt.Println("Hello world!",a)}//Output://./main.go:10:32: undefined: a

2022-01-06 19:12:14 300

原创 go switch 判断 type 匹配变量类型

package mainimport "fmt"func main() { a := '1' b := '1' var c int64 = 2 d := int64(c) e := int64(d) - 1 if a == b{ fmt.Println("a==b") } if c == d { fmt.Println("c==d") } if e == 1 { .

2022-01-06 17:17:06 496

原创 go switch case 同时匹配多个值 multi value in case

package mainimport ( "fmt")func main() { //Output: 1 matches 1,2 testSwitch()}func testSwitch() { a := 1 switch a { // case 1: // fmt.Println("1 matches 1,2") //.\test_switch.go:17:8: duplicate case 1 in switch case 1,2: fmt.Println.

2022-01-06 16:49:57 1762

原创 go time.sub用法

package mainimport ( "fmt" "time")func main() { testTimeDua() // fmt.Println()}// time.sub testfunc testTimeDua() { time_duration := time.Duration(2) //Output: Duration(2): time.Duration 2 2ns fmt.Printf("Duration(2): %T %d %s\n",...

2022-01-05 19:52:30 1407

原创 shell process substitution 进程替换

~$ ls <(echo 123)/dev/fd/63~$ cat <(echo 123)123~$ ls >(echo 123)123/dev/fd/63

2022-01-01 22:41:00 334

原创 lua5.1 local作用域 测试

lua do end local作用域

2021-12-23 09:25:00 738

原创 ul li img标签 图片不显示的问题

可以吧img标签去掉,在li元素中设置 background-image:url('xx.png');的形式显示如果ul设置的是 “inline”,这通常是为了能够水平居中显示,还要确保li元素的宽度足够大,若不显示的li元素没有足够大的图片或文字,可以使用多个&amp;nbsp;代替,参考:&lt;ul&gt;&lt;li class="bianhao"&gt;Copyright© 2005-2...

2018-06-05 16:16:44 4646

原创 JS 根据URL跳转页面

var h = window.location.pathname; var hpp = h.split('/', 2) var hp = h.split('/') if(hp.length&gt;1 &amp;&amp; hp[1] != 'm' &amp;&amp; hp[1] != 'en' &amp;&amp; hp[1] != 'admin' ){//无 m PC端 ...

2018-06-05 10:33:16 1036

转载 drupal7创建View时设置5种显示方式介绍

Views 模块是Drupal7里面最流行的模块. 也是使用量最多的模块. 它几乎无所不能.制作一个页面, 制作一个管理页面.  Views 整合了 分类(Term)、用户(user)、 评论(comment) 等等。从本质上来说,Views是一个智能的查询生成器,只要你提供了足够的信息,它就可以查询出你想要的东西,并且将查询结果以你要求的方式显示。利用Views你可以生成一个页面、区块,并且可以...

2018-05-24 16:10:19 4461

原创 dupal 设置block 以 ul显示时的class

2018-05-24 15:37:33 292

原创 Drupal7的View设置 Filed Criteria

2018-05-24 12:17:06 394

原创 js 变量的作用域之for循环

var funcs = []for (var i = 0; i &lt; 10; i++) {    funcs.push(function() { console.log(i) })}funcs.forEach(function(func) {    func()})//输出1010……10(共10遍10)

2018-05-18 08:59:40 442 2

原创 一个很简单大方的jquery 弹框 plugin blockUI

&lt;script src="jquery.min.js"&gt;&lt;/script&gt;&lt;script src="blockui.min.js"&gt;&lt;/script&gt;&lt;style type="text/css"&gt; .job-pos-container{ margin-bottom: 60px; wi

2018-05-17 22:22:51 382

原创 微信web开发者工具

通过收集相关资料,加亲身实验,有以下几种调试微信页面的方式:1、(推荐)手机连wifi,并确保手机可以ping通pc端(不在一个网段也可以,只要路由是通的)     此种方法需要在手机上按开发者工具上设置连接wifi的代理IP,和端口     无法调试断点,响应数据无法查看2、(推荐)适用于没有手机的情况,需要有开发者权限,并在工具上登录微信帐号      在工具内部右边的浏览器地址栏输入测试的网...

2018-04-12 11:47:21 415

原创 https加密步骤

1、a new key string is generated by the browser2、a copy of it is encrypted using the server's public key and send to the server3、now all the data can be encrypted using this new session specific sy

2017-12-31 20:04:50 358

原创 CAS build

cd cas-server./gradlew eclipseExecution failed for task ':cas-management-webapp:eclipseJdt'.> java.lang.String cannot be cast to org.gradle.api.JavaVersionto solve:去掉gradle.properties

2017-12-27 18:49:58 595

原创 某招聘站点登录模拟练习(持续更新)

1、查看提交的接口和具体数据:使用Chrome的开发人员工具,点击preserve log登录后追踪日志可知登录表单被提交到 domain/login/login.json发现request Headers是ajax方式,还设置了token和code:X-Anit-Forge-Code:79589070X-Anit-Forge-Token:63991b91-149f-4

2017-12-20 14:24:05 486

原创 Python property不存在时调用getProperty函数

写了一个检测方法是否存在的基类,用于动态获取属性BaseObject.py# -*- coding: UTF-8 -*-from functools import wrapsclass BaseObject(object): '''基类''' def __getattr__(self, name): ''' 属性不存在时,调用子类实现的getProp

2017-11-10 15:32:04 547

原创 PHP7使用原生PDO查询和使用Yii2的AR类查询的效率问题

做一个实时监控任务进度监控定时脚本,mysql在数据表(表 ·sl_ws_data_task_page· )超过20w条时用客户端工具连接Mysql总会卡顿2s于是我检查了下代码:发现使用Explain select后使用的Extra类型为 Using where,我意识到,sql语句要优化;看了下线上环境的代码:$pageArr = SlWsDataTaskPageCon

2017-10-26 15:23:09 1424

转载 运行框里可执行命令一览

运行框里可执行命令一览 发稿时间:2004-12-18  作者:admin 点击:400 次

2011-07-29 10:11:40 542

原创 web.config 连接数据库

<br />在web.config文件中保存数据库连接配置信息,可以让你无须重新编译应用程序即可更新应用程序的某些属性。当你想把数据库迁移到另一个不同的服务器,你只需要修改web.config文件中的数据库连接配置信息而已,并不需要重新编译和重新部署这个应用程序以适应新的服务器的要求。 <br /><br />你会经常碰到这种情况:几乎在网站的每个页面上,存储一些全局处理信息。理想的做法是将这些信息一次性的集中存储在资料档案库中,而不是在网站的每个页面上都重复这样的操作。比如说数据库连接串就是这样的信息,如

2010-06-21 21:28:00 641

转载 DataSet和DataReader的区别

<br />ADO.NET提供以下两个对象,用于检索关系数据并将其存储在内存中:DataSet和DataReader。DataSet提供一个内存中数据的关系表示形式,一整套包括一些表在内的数据(这些表包含数据、对数据进行排序并约束数据),以及表之间的关系。DataReader提供一个来自数据库的快速、仅向前、只读数据流。当使用DataSet时,经常会利用DataAdapter(也可能是CommandBuilder)与数据源进行交互。当使用DataSet时,也可以利用DataView对DataSet中的数据应

2010-06-21 21:13:00 559

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除