首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Google日历简易版

使用过twitter,但它档案查阅和时间序列功能实在太弱了。 最后,我想到了Google日历。虽然它主要是行事历,但用来写日记也很不错,而且它出自Google,相对可靠一点。...问题是,它界面太复杂,太不友好,太笨重,要加载很多东西。不要说日常使用,看一眼就让人生厌。它倒是有一个专供手机使用移动版,但是功能之弱让人震惊,居然不支持手机更新。...我知道,Google日历编程接口API是开放,因此想着,也许自己可以编一个简易更新界面。...这几天,我把它开发文档读了一遍,写出了一个"Google日历简易版",网址是http://www.ruanyifeng.com/webapp/calendar/。...我只不过提供一个界面,所有的数据交换都通过ajax渠道,直接与google服务器联系,不经过第三方。安全性与直接使用google网站完全一样。 (完)

72730
您找到你想要的搜索结果了吗?
是的
没有找到

Google日历简易版 2.0

大家用不用Google日历? 它可以用来规划日程、记录事项、甚至写日记,既安全(数据保存在Google机房)又方便(各种平台都能访问),甚至还很贴心地提供手机同步和免费短信提醒。...但是,又不喜欢它界面:拥挤丑陋,辨识困难,操作麻烦。于是,2008年,我写了一个"Google日历简易版"。 今年四月份,Google启用新版本API,我那个程序彻底无法使用了。...你写了一个日历程序,可是连用户最新事件都取不到......(我现在解决方法是,一个时间段内限定取回30个事件。如果超出这个数量,只有用户自行缩短时间段了。)...此外,Google还规定,日历API每天请求上限是10000次。你没有看错,真的只有四个零。我数了好几遍,都不敢相信自己眼睛。...======================================== 不管怎么说,这个"Google日历简易版",我还是会维护下去(毕竟眼前找不到更好在线日历)。

1.4K80

Node事件循环

Node自身执行模型是事件循环,理解了事件循环可以清楚知道代码执行顺序。事件循环就像一个这样循环体,不断轮询。当然,如果没有观察者,进程就会退出,不会死循环。哈哈。...while (true) { // 执行异步操作 } 事件循环里面都有对应观察者,然后事件循环从观察者中取出事件并执行。观察者可以理解为一个数据存在一对多关系,所以使用了观察者。...setImmediate(function () { console.log('setImmediate延迟执行1'); // 进入下次循环 process.nextTick(function...如果在一个方法中有回调加入其他队列,但是当前队列有方法没有执行完毕,需要先把当前执行完毕后再执行其他队列方法。...总结:Node中包含一些异步API,而处理异步是通过事件循环方式,异步API中回调会存放在对应观察者队列中,观察者有先后顺序,然后事件循环从观察者中取出事件并执行。

84630

Android向系统日历添加日程事件

在项目开发过程中,有时会有预约提醒、定时提醒等需求,这时我们可以使用系统日历来辅助提醒。通过向系统日历中写入事件、设置提醒方式(闹钟),实现到达某个特定时间自动提醒功能。...这样做好处是由于提醒功能是交付给系统日历来做,不会出现应用被杀情况,能够做到准时提醒。...一般来说实现向系统日历中读写事件一般有以下几个步骤: (1)需要有读写日历权限; (2)如果没有日历账户需要先创建账户; (3)实现日历事件增删改查、提醒功能; 1.权限申请 为了实现在项目中调用系统日历和插入日程事件...id if (calId < 0) { //获取账户id失败直接返回,添加日历事件失败 return; } //添加日历事件...if (newEvent == null) { //添加日历事件失败直接返回 return; } //事件提醒设定

2.9K20

nodejs事件循环

2019-04-04 06:21:40 js执行是事件循环模型,同样作为服务端nodejs也是基于事件循环事件模型,但是他又增加了一些非 IO 异步 API: setTimeOut(), setInterval...nodejs事件循环 首先,我们需要了解node.js基于事件循环事件模型,正是因为它才使得node.js中回调函数十分普遍,也正是基于此,node.js实现了单线程高效异步IO(这里说单线程主要说是执行...同步任务进入主线程后会一直执行,直到同步任务执行完毕,主线程才会出现空闲,此时会去事件队列中查找是否有可执行异步任务,如果有就推入到主线程中开始执行。如此就完成了整个事件循环。...nodejs在启动时,他会创建一个类似于while(true)结构,每次执行一次循环体称为一次tick,每个tick过程就是查看是否有事件等待处理,如果有,则取出事件极其相关回调函数并执行,然后执行下一次...在每个tick中,如何判断是否有事件需要处理,于是引入了观察者概念。每一个事件循环都有一个或多个观察者,判断是否有事件需要执行过程其实就是想这些观察者询问是否有需要处理事件

99340

js事件循环

之前有看过一些事件循环博客,不过一阵子没看就发现自己忘光了,所以决定来自己写一个博客总结下!...检查Microtask队列是否为空,若不为空,则进入下一步,否则,跳到1(开始新事件循环) 从Microtask队列中取队首(在队列时间最长)任务进去事件队列执行,执行完后,跳到3 其中,在执行代码过程中新增...microtask任务会在当前事件循环周期内执行,而新增macrotask任务只能等到下一个事件循环才能执行了(一个事件循环只执行一个macrotask) 首先,我们先来看一段代码 console.log...,回到第一步,进入下一个事件循环,此时macrotask队列为: settimeout2,setinterval1 第四次事件循环: 从macrotask队列里取位于队首任务(settimeout2)...原因:因为一开始js主线程中跑任务就是macrotask任务,而根据事件循环流程,一次事件循环只会执行一个macrotask任务,因此,执行完主线程代码后,它就去从microtask队列里取队首任务来执行

18.8K41

javascript事件循环

JavaScript事件循环 JavaScript单线程 JavaScript 从一开始被创造出来就使用单线程,这主要与他用途相关。...JavaScript事件循环机制几乎不是同一回事,因此下文将浏览器和node环境下事件循环分开介绍。...这里规范允许浏览器自己选择更新时机,因此实际上可能不会在每一轮事件循环都去更新渲染) event loop会循环执行上面3步。...node 中将每一次轮循分成6个阶段,就是下面展示六个阶段,每走完一次循环就是一个tick,并且还要注意是node事件循环运行在主线程。...timers中队列为空 检测check阶段任务队列是否为空 如果不为空,就会结束poll阶段,进入到check阶段,并执行check阶段中任务队列; 如果为空,事件循环就会阻塞在这个阶段。

1.2K20

Redis事件循环

Redis事件循环 文件事件 时间事件 事件调度和执行 客户端部分 关于客户端输出缓冲区限制 ServerCron周期函数 服务器启动流程 小结 ---- Redis服务器是一个事件驱动程序, 主要处理两类事件...redis如何在单线程情况下统筹安排文件事件和时间事件执行 ---- 文件事件 Redis基于IO多路复用模式开发了自己网络事件处理器,这个处理器被称为文件事件处理器,该处理器核心运作流程如下:...---- 事件调度和执行 Redis是如何协调文件事件和时间事件执行呢?...由于redis需要不断去处理文件和时间事件,因此aeProcessEvents函数需要置于一个循环里面,加上初始化和清理函数,这就构成了Redis服务器主函数: Redis事件循环机制核心流程图如下所示...还原数据库状态(优先选择aof) 执行事件循环 ---- 小结 本文主要参考 > 第十二章到第十四章内容。

50910

nodejs事件循环

6个主要阶段 当js同步脚本运行完后,如果有异步操作还没有完成,node就将进入事件循环,像http.createServer.listen,fs.readFileAsync等操作都会使node进入事件循环...,不做讨论 4.poll:轮询 处理I/O事件回调,适当时候,Node将在这里堵塞 5.cheak setImmediate回调在此执行 6.close callback 关闭回调,close事件监听回调...,内核正在读取文件,当事件循环开始时,timers阶段显示时间没到100ms,跳过进入poll阶段,此时文件还没有读完,但因为poll阶段检测到也没到定时器100ms,所以即使进行下一轮事件循环还是会跳过...timers阶段,所以决定等待文件读取操作,就是堵塞在poll阶段,直到100ms,此时如果文件读取完成,就会把文件读取回调执行完,再进入下一轮事件循环,执行timers定时器 但有一个情况会有所不同...独立维护一个队列,在每个阶段结束后,都会优先清空该队列 node中事件循环和宏任务微任务 宏任务: setTimeout,setInterval,setImmediate I/O回调 同步脚本

44830

JavaScript 事件循环

事件循环事件循环概念非常简单。它是一个在JavaScript 引擎等待任务,执行任务和进入休眠状态等待更多任务这几个状态之间转换无限循环。...,跳到3 其中,在执行代码过程中新增microtask任务会在当前事件循环周期内执行,而新增macrotask任务只能等到下一个事件循环才能执行了。...,回到第一步,进入下一个事件循环,此时macrotask队列为: settimeout1,setinterval1,settimeout2 第二次事件循环: 从macrotask队列里取位于队首任务(...原因:因为一开始js主线程中跑任务就是macrotask任务,而根据事件循环流程,一次事件循环只会执行一个macrotask任务,因此,执行完主线程代码后,它就去从microtask队列里取队首任务来执行...而对于js 异步事件,因为有事件循环机制,异步事件就是由事件驱动异步非阻塞,上面的栗子已经很好证明了。

81420

JS 事件循环

浏览器执行线程 在解释事件循环之前首先先解释一下浏览器执行线程: 浏览器是多进程,浏览器每一个 tab 标签都代表一个独立进程,其中浏览器渲染进程(浏览器内核)属于浏览器多进程中一种,主要负责页面渲染...主线程内任务执行完毕为空,会去任务队列读取对应任务,推入主线程执行。 上述过程不断重复就是我们说 Event Loop (事件循环)。...在事件循环中,每进行一次循环操作称为tick,通过阅读规范可知,每一次 tick 任务处理模型是比较复杂,其关键步骤可以总结如下: 在此次 tick 中选择最先进入队列任务( oldest task...).then(function() { console.log('then1') }) console.log('script end'); 这个题目就稍微有点复杂了,我们再分析下: 首先,事件循环从宏任务...最后最后,记住,JavaScript 是一门单线程语言,异步操作都是放到事件循环队列里面,等待主执行栈来执行,并没有专门异步执行线程。

15.4K10

事件循环详解

目录 事件循环机制 浏览器事件循环 浏览器中宏任务和微任务有哪些 setImmediate/setTimeout MessageChannel promisethen方法 MutationObserver...面试题详解 Node事件循环 面试题详解 事件循环机制 先了解下任务队列 所有同步任务都在主线程上执行,形成一个执行栈 主线程之外,还存在一个任务队列。...此时区分为浏览器事件循环和Node端事件循环。下面将一一详解。...浏览器事件循环 主线程从任务队列中读取事件,这个过程是循环不断,所以整个这种运行机制又称为Event Loop(事件循环) 上图过程是一个宏观表述,实际上callback queue任务队列是分为...,受代码运行环境影响 如果setImmediate和timer队列都是空,那么循环会在poll阶段停留,直到有一个I/O事件返回,循环会进入I/O callback阶段并立即执行这个事件回调 check

60320

nodejs事件事件循环简介

同样nodejs中也有事件,并且还有一个专门events模块来进行专门处理。 同时事件事件循环也是nodejs构建异步IO非常重要概念。 今天我们来详细了解一下。...removeAllListeners(): 移除事件所有监听器 事件循环 我们知道nodejs代码是运行在单线程环境中,每次只会去处理一件事情。...所谓事件循环,就是指处理器在一个程序周期中,处理完这个周期事件之后,会进入下一个事件周期,处理下一个事件周期事情,这样一个周期一个周期循环。...事件循环阻塞 如果我们在事件处理过程中,某个事件处理发生了阻塞,则会影响其他事件执行,所以我们可以看到在JS中,几乎所有的IO都是非阻塞。...事件循环举例 我们看一个简单事件循环例子: const action2 = () => console.log('action2') const action3 = () => console.log

99450

nodejs事件事件循环简介

同样nodejs中也有事件,并且还有一个专门events模块来进行专门处理。 同时事件事件循环也是nodejs构建异步IO非常重要概念。 今天我们来详细了解一下。...removeAllListeners(): 移除事件所有监听器 事件循环 我们知道nodejs代码是运行在单线程环境中,每次只会去处理一件事情。...所谓事件循环,就是指处理器在一个程序周期中,处理完这个周期事件之后,会进入下一个事件周期,处理下一个事件周期事情,这样一个周期一个周期循环。...事件循环阻塞 如果我们在事件处理过程中,某个事件处理发生了阻塞,则会影响其他事件执行,所以我们可以看到在JS中,几乎所有的IO都是非阻塞。...事件循环举例 我们看一个简单事件循环例子: const action2 = () => console.log('action2') const action3 = () => console.log

82940

nodejs事件事件循环详解

简介 上篇文章我们简单介绍了nodejs中事件event和事件循环event loop。...nodejs中事件循环 虽然nodejs是单线程,但是nodejs可以将操作委托给系统内核,系统内核在后台处理这些任务,当任务完成之后,通知nodejs,从而触发nodejs中callback方法...poll轮询 poll将会检测新I/O事件,并执行与I / O相关回调,注意这里回调指的是除了关闭callback,timers,和setImmediate之外几乎所有的callback事件。...close callbacks 最后一个phase是处理close事件callbacks。比如一个socket突然被关闭,那么将会触发一个close事件,并调用相关callback。...但是这个时候,serverlistening事件绑定代码还没有执行。

71931

nodejs事件事件循环详解

简介 上篇文章我们简单介绍了nodejs中事件event和事件循环event loop。...nodejs中事件循环 虽然nodejs是单线程,但是nodejs可以将操作委托给系统内核,系统内核在后台处理这些任务,当任务完成之后,通知nodejs,从而触发nodejs中callback方法...poll轮询 poll将会检测新I/O事件,并执行与I / O相关回调,注意这里回调指的是除了关闭callback,timers,和setImmediate之外几乎所有的callback事件。...close callbacks 最后一个phase是处理close事件callbacks。 比如一个socket突然被关闭,那么将会触发一个close事件,并调用相关callback。...但是这个时候,serverlistening事件绑定代码还没有执行。

83140

nodejs事件事件循环简介

同样nodejs中也有事件,并且还有一个专门events模块来进行专门处理。 同时事件事件循环也是nodejs构建异步IO非常重要概念。 今天我们来详细了解一下。...removeAllListeners(): 移除事件所有监听器 事件循环 我们知道nodejs代码是运行在单线程环境中,每次只会去处理一件事情。...所谓事件循环,就是指处理器在一个程序周期中,处理完这个周期事件之后,会进入下一个事件周期,处理下一个事件周期事情,这样一个周期一个周期循环。...事件循环阻塞 如果我们在事件处理过程中,某个事件处理发生了阻塞,则会影响其他事件执行,所以我们可以看到在JS中,几乎所有的IO都是非阻塞。...事件循环举例 我们看一个简单事件循环例子: const action2 = () => console.log('action2') const action3 = () => console.log

78941

JavaScript事件循环模型

工作原理JavaScript 事件循环模型是基于单线程执行机制。它使用事件队列(Event Queue)和调用栈(Call Stack)来管理和执行任务。...通过事件循环模型,JavaScript 可以实现非阻塞异步操作,使得程序可以同时处理多个任务。组成部分JavaScript 事件循环模型由以下几个组成部分构成:1....一旦异步任务完成,Web API 会将回调函数放入事件队列中。4. 事件循环(Event Loop)事件循环是 JavaScript 引擎核心部分。...事件循环检查事件队列,发现 Promise 任务,将其放入调用栈中执行,输出 'Promise'。Promise 任务执行完成,调用栈为空,事件循环继续。事件循环检查事件队列,发现没有任务,结束。...结果输出为:StartEndPromiseTimeout通过事件循环模型,JavaScript 可以在执行同步任务同时处理异步任务,实现非阻塞异步操作。

34020
领券