麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

FutureTask 源碼閱讀

2019-11-10 20:19:31
字體:
供稿:網(wǎng)友
public void run() { if (state != NEW || !UNSAFE.compareAndSwapObject(this, runnerOffset, null, Thread.currentThread())) return; try { Callable<V> c = callable; if (c != null && state == NEW) { V result; boolean ran; try { result = c.call(); ran = true; } catch (Throwable ex) { result = null; ran = false; setException(ex); } if (ran) set(result); } } finally { // runner must be non-null until state is settled to // PRevent concurrent calls to run() runner = null; // state must be re-read after nulling runner to prevent // leaked interrupts int s = state; if (s >= INTERRUPTING) handlePossibleCancellationInterrupt(s); } }/**get操作的核心方法*/private int awaitDone(boolean timed, long nanos) throws InterruptedException { final long deadline = timed ? System.nanoTime() + nanos : 0L; WaitNode q = null; boolean queued = false; for (;;) { if (Thread.interrupted()) { removeWaiter(q); throw new InterruptedException(); } int s = state; if (s > COMPLETING) { if (q != null) q.thread = null; return s; } else if (s == COMPLETING) // cannot time out yet Thread.yield(); else if (q == null) q = new WaitNode(); else if (!queued) queued = UNSAFE.compareAndSwapObject(this, waitersOffset, q.next = waiters, q); else if (timed) { nanos = deadline - System.nanoTime(); if (nanos <= 0L) { removeWaiter(q); return state; } LockSupport.parkNanos(this, nanos); } else LockSupport.park(this); } } /** * @throws CancellationException {@inheritDoc} */ public V get() throws InterruptedException, ExecutionException { int s = state; if (s <= COMPLETING) s = awaitDone(false, 0L); return report(s); } /** * @throws CancellationException {@inheritDoc} */ public V get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException { if (unit == null) throw new NullPointerException(); int s = state; if (s <= COMPLETING && (s = awaitDone(true, unit.toNanos(timeout))) <= COMPLETING) throw new TimeoutException(); return report(s); }

歡迎使用Markdown編輯器寫博客

本Markdown編輯器使用StackEdit修改而來,用它寫博客,將會帶來全新的體驗哦:

Markdown和擴展Markdown簡潔的語法代碼塊高亮圖片鏈接和圖片上傳LaTex數(shù)學(xué)公式UML序列圖和流程圖離線寫博客導(dǎo)入導(dǎo)出Markdown文件豐富的快捷鍵

快捷鍵

加粗 Ctrl + B 斜體 Ctrl + I 引用 Ctrl + Q插入鏈接 Ctrl + L插入代碼 Ctrl + K插入圖片 Ctrl + G提升標(biāo)題 Ctrl + H有序列表 Ctrl + O無序列表 Ctrl + U橫線 Ctrl + R撤銷 Ctrl + Z重做 Ctrl + Y

Markdown及擴展

Markdown 是一種輕量級標(biāo)記語言,它允許人們使用易讀易寫的純文本格式編寫文檔,然后轉(zhuǎn)換成格式豐富的HTML頁面。 —— [ 維基百科 ]

使用簡單的符號標(biāo)識不同的標(biāo)題,將某些文字標(biāo)記為粗體或者斜體,創(chuàng)建一個鏈接等,詳細(xì)語法參考幫助?。

本編輯器支持 Markdown Extra ,  擴展了很多好用的功能。具體請參考Github.

表格

Markdown Extra 表格語法:

項目 價格
Computer $1600
Phone $12
Pipe $1

可以使用冒號來定義對齊方式:

項目 價格 數(shù)量
Computer 1600 元 5
Phone 12 元 12
Pipe 1 元 234

定義列表

Markdown Extra 定義列表語法:項目1項目2定義 A定義 B項目3定義 C

定義 D

定義D內(nèi)容

代碼塊

代碼塊語法遵循標(biāo)準(zhǔn)markdown代碼,例如:

@requires_authorizationdef somefunc(param1='', param2=0): '''A docstring''' if param1 > param2: # interesting print 'Greater' return (param2 - param1 + 1) or Noneclass SomeClass: pass>>> message = '''interpreter... prompt'''

腳注

生成一個腳注1.

目錄

[TOC]來生成目錄:

歡迎使用Markdown編輯器寫博客快捷鍵Markdown及擴展表格定義列表代碼塊腳注目錄數(shù)學(xué)公式UML 圖離線寫博客瀏覽器兼容

數(shù)學(xué)公式

使用MathJax渲染LaTex 數(shù)學(xué)公式,詳見math.stackexchange.com.

行內(nèi)公式,數(shù)學(xué)公式為:Γ(n)=(n?1)!?n∈?。塊級公式:

x=?b±b2?4ac ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄√2a

更多LaTex語法請參考 這兒.

UML 圖:

可以渲染序列圖:

Created with Rapha?l 2.1.0張三張三李四李四嘿,小四兒, 寫博客了沒?李四愣了一下,說:忙得吐血,哪有時間寫。

或者流程圖:

Created with Rapha?l 2.1.0開始我的操作確認(rèn)?結(jié)束yesno關(guān)于 序列圖 語法,參考 這兒,關(guān)于 流程圖 語法,參考 這兒.

離線寫博客

即使用戶在沒有網(wǎng)絡(luò)的情況下,也可以通過本編輯器離線寫博客(直接在曾經(jīng)使用過的瀏覽器中輸入write.blog.csdn.net/mdeditor即可。Markdown編輯器使用瀏覽器離線存儲將內(nèi)容保存在本地。

用戶寫博客的過程中,內(nèi)容實時保存在瀏覽器緩存中,在用戶關(guān)閉瀏覽器或者其它異常情況下,內(nèi)容不會丟失。用戶再次打開瀏覽器時,會顯示上次用戶正在編輯的沒有發(fā)表的內(nèi)容。

博客發(fā)表后,本地緩存將被刪除。 

用戶可以選擇 把正在寫的博客保存到服務(wù)器草稿箱,即使換瀏覽器或者清除緩存,內(nèi)容也不會丟失。

注意:雖然瀏覽器存儲大部分時候都比較可靠,但為了您的數(shù)據(jù)安全,在聯(lián)網(wǎng)后,請務(wù)必及時發(fā)表或者保存到服務(wù)器草稿箱

瀏覽器兼容

目前,本編輯器對Chrome瀏覽器支持最為完整。建議大家使用較新版本的Chrome。IE9以下不支持IE9,10,11存在以下問題 不支持離線功能IE9不支持文件導(dǎo)入導(dǎo)出IE10不支持拖拽文件導(dǎo)入

這里是 腳注內(nèi)容. ?
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 免费a级毛片永久免费 | 成人免费精品视频 | 草逼一区 | 欧美一级电影网 | 91精品国产91久久久久久丝袜 | 国产精品午夜一区 | 91a在线观看 | 91成人在线网站 | 欧美日韩在线播放 | 欧美精品成人一区二区在线观看 | av免费av| 国产精品成人亚洲一区二区 | h视频免费观看 | 成人免费av在线播放 | 国产羞羞视频 | 国产xxxx免费 | 成人国产精品久久久 | 日日操夜夜透 | 国产成人精品日本亚洲语音 | 国内精品久久久久久久星辰影视 | 黄色影院在线观看视频 | 欧日一级片 | 欧美巨根 | 国产成人自拍av | 亚洲第五色综合网 | 欧美人的天堂一区二区三区 | 精品中文字幕久久久久四十五十骆 | 毛片在哪里看 | 国产成年人小视频 | 天天看天天摸天天操 | 法国性xxx精品hd | 最新av在线免费观看 | wwwxxx免费视频| 日韩大片在线永久观看视频网站免费 | 激情网站免费观看 | 97人人草| 成人电影毛片 | 欧美一级高清免费 | 毛片福利 | 国内精品一级毛片免费看 | 92看片淫黄大片一级 |