servlet中session其實(shí)是session級(jí)別cookie
sessionstorage不是cookie
區(qū)別就是cookie和sessionstorage的區(qū)別了
update一下pip應(yīng)該就好了。解釋在這:https://stackoverflow.com/que...
由于沒(méi)有報(bào)錯(cuò),我自己猜八成是路徑問(wèn)題,最后賭了一手路徑,試著改了router/router.js下的base: "路徑",改成和服務(wù)器輸出的路徑一樣,最后出來(lái)效果了。
服務(wù)器輸出的是http://localhost:3000/admin/main.html(這是app的內(nèi)容),對(duì)應(yīng)的base選項(xiàng)填上/admin/main.html
js關(guān)鍵字,不能用作變量、函數(shù)名、過(guò)程、和對(duì)象名。
本來(lái)嘛,他也沒(méi)錯(cuò),但是你不知道和別的東西合在一起使用會(huì)發(fā)生什么樣的錯(cuò)誤。
比如有些工具壓縮的時(shí)候。。。完蛋。
這樣就安全多了。
@holahole ,F(xiàn)orge Viewer不是做模型設(shè)計(jì)的平臺(tái),只有靜態(tài)的數(shù)據(jù),而且原始模型轉(zhuǎn)來(lái)的數(shù)據(jù)是只讀的,所以沒(méi)有辦法通過(guò)修改屬性達(dá)到效果。
你只能自己旋轉(zhuǎn)門(mén)這個(gè)對(duì)象,達(dá)到你要的效果。當(dāng)然,這并不會(huì)影響這個(gè)屬性displayName = 'Door Closed' ,比如,旋轉(zhuǎn)門(mén)打開(kāi),但屬性仍舊是closed。
而這些旋轉(zhuǎn)變化,如上所述,轉(zhuǎn)換來(lái)的數(shù)據(jù)是只讀的,所以你還需要記錄下這些旋轉(zhuǎn)狀態(tài),等下一次加載的時(shí)候再執(zhí)行一遍,得到上次的對(duì)象狀態(tài)。
一般函數(shù)是一次性生成所有數(shù)據(jù)返回,
若想按需取每一個(gè)數(shù)據(jù),那么使用for來(lái)迭代,但是數(shù)據(jù)太多了怎么辦?
就需要一種生成數(shù)據(jù)的規(guī)則,每次按規(guī)則生成數(shù)據(jù)返回一項(xiàng)數(shù)據(jù),這就是yield的
>>> def gen(n):
i = 0
while i < n:
i += 1
yield i
>>> for s in gen(10):
print(s)
gen(10)不會(huì)一次性先計(jì)算好10個(gè)值,而是迭代的時(shí)候一個(gè)一個(gè)生成。
生成器的主要意義之一就是避免占用更多的內(nèi)存。
import time
import asyncio
from multiprocessing import Process, Queue
from concurrent.futures import ThreadPoolExecutor
async def api_a():
await asyncio.sleep(2)
return str(time.time())
async def api_b():
await asyncio.sleep(3)
return str(time.time())
class Test(object):
def __init__(self):
self._a = ''
self._b = ''
async def a(self):
self._a = await api_a()
async def b(self):
self._b = await api_b()
def each_op(s):
time.sleep(5)
print('do some operation')
print(s)
def db_op(q):
start = time.time()
with ThreadPoolExecutor(5) as executor:
while 1:
if not q.empty():
s = q.get(True)
if s is None:
print('no more api task')
break
executor.submit(each_op, s)
print('no more db task')
print('db time:', time.time()-start)
if __name__ == '__main__':
start = time.time()
t = Test()
q = Queue()
op = Process(target=db_op, args=(q,))
op.start()
loop = asyncio.get_event_loop()
for _ in range(5):
loop.run_until_complete(asyncio.wait([t.a(), t.b()]))
q.put((t._a, t._b))
loop.close()
q.put(None)
print('api time:', time.time() - start)
終端調(diào)用:
python3 test.py
結(jié)果:
do some operation
('1517222152.4486094', '1517222153.4516666')
do some operation
('1517222155.451781', '1517222156.4548383')
do some operation
('1517222158.4549527', '1517222159.4580102')
api time: 15.032859802246094
no more api task
do some operation
('1517222161.4581246', '1517222162.4611819')
do some operation
('1517222164.4612963', '1517222165.4643538')
no more db task
db time: 19.849135398864746問(wèn)題一,是的,listen參數(shù)backlog就是這個(gè)沒(méi)有建立(accept)的連接隊(duì)列的最大長(zhǎng)度,不過(guò)系統(tǒng)內(nèi)核還有另外一個(gè)上限控制,backlog不是隨便設(shè)多大就行。
問(wèn)題二,這個(gè)socket對(duì)象在內(nèi)核內(nèi)存里,你只有它的句柄(fd)。
內(nèi)核其中包括收發(fā)的緩沖區(qū)。你不能直接讀寫(xiě)它,內(nèi)核收發(fā)時(shí)read或send時(shí),會(huì)把內(nèi)核緩沖區(qū)的數(shù)據(jù)拷貝到用戶空間或者反之。能接收多少數(shù)據(jù)取決于內(nèi)核和網(wǎng)卡驅(qū)動(dòng)的參數(shù)配置,即相應(yīng)內(nèi)核緩沖區(qū)的大小。不同的IP連接有不同的描述符,不同進(jìn)程之間也是隔離的,都在內(nèi)核里統(tǒng)一維護(hù)。如果放不下。UDP會(huì)導(dǎo)致丟包,TCP連接對(duì)方則會(huì)嘗試重發(fā)。
大概是作用域問(wèn)題,你的loadedHandler定義在了匿名函數(shù)里面,執(zhí)行這一句
var player=new ckplayer(videoObject);
的時(shí)候不是沒(méi)定義就是已經(jīng)被銷毀了.
建議把這個(gè)函數(shù)定義在和endedHandler同樣級(jí)別的位置上,如果是在計(jì)時(shí)器里面執(zhí)行,應(yīng)該定義在全局位置.如果真的要在這里做個(gè)性化處理,那就直接在外面掛在window上
不要用Tab就好了,在編輯模板文件的時(shí)候,讓編輯器自動(dòng)把Tab轉(zhuǎn)為空格。 實(shí)際上,Tab轉(zhuǎn)為空格是個(gè)不錯(cuò)的習(xí)慣。
每次提交完問(wèn)題, 總是就可以自己找到解決方案, 是運(yùn)氣好嗎? 折磨了我三天的問(wèn)題終于解決了, 而導(dǎo)致這個(gè)問(wèn)題的原因居然是spring boot(1.3.x)與cas(4.2.x)版本不兼容導(dǎo)致, 解決方案很簡(jiǎn)單, 升級(jí)spring boot版本到1.5.x, cas不用指定版本號(hào)(會(huì)根據(jù)spring-boot-starter-parent自動(dòng)適應(yīng))
嗅探?是指第一次用options第二次用post這樣的吧。瀏覽器這邊他是自動(dòng)的。如果服務(wù)器方面不收options的請(qǐng)求的話,需要他們針對(duì)這一個(gè)請(qǐng)求返回成功
private transient Object[] elementData;
這是list源碼里面的方法 真正保留數(shù)據(jù)的數(shù)組在這里面 Map<String,Object> 是我mapper映射出來(lái)的第一級(jí)的數(shù)據(jù)
存放在此 List<User> 只是用User對(duì)這個(gè)類型進(jìn)行了一下形式上的轉(zhuǎn)換而已 并沒(méi)有改變真正保留的數(shù)據(jù)
https://segmentfault.com/q/10...
能自己動(dòng)手搜索一下嗎
一般SMS接口發(fā)送以后會(huì)直接返回是否發(fā)送成功的結(jié)果,
有了這個(gè)以后無(wú)需去判斷用戶收沒(méi)收到
當(dāng)ng-repeat的時(shí)候創(chuàng)建了一個(gè)新的作用域 所以你在上一層作用域中拿不到在新作用域中的修改值
所以只能修改上一層作用域,關(guān)于點(diǎn)一個(gè)全部都默認(rèn)點(diǎn)擊是一位所有的ng-model的數(shù)據(jù)值都是一樣,必須得加上唯一標(biāo)識(shí)符才能區(qū)分開(kāi)來(lái),水平有限!個(gè)人見(jiàn)解,對(duì)不對(duì)的不負(fù)責(zé)任!
已解決,props單向傳遞,從父到子就可以實(shí)現(xiàn)了
完美符合你要求的方式肯定是沒(méi)有的,因?yàn)?bind 函數(shù)不可能改變另一個(gè)函數(shù)內(nèi)部的局部變量。
折中的方式也有很多,比如定義一個(gè)包級(jí)屬性:
var drawPaint: Paint? = null
然后原來(lái)的函數(shù)改為:
inline fun Canvas.drawPoint(
point: PointF,
paint: Paint) {
paint?.let {
drawPoint(point.x, point.y, it)
}
}
方便使用還可以再定義一個(gè)函數(shù)來(lái)確保 drawPaint 能被準(zhǔn)確的賦值和釋放:
fun bindPaint(paint: Paint, action: () -> Unit) {
drawPaint = paint
action()
drawPaint = null
}
這樣使用時(shí)就是:
// Canvas().apply {
bindPaint(somePaint) {
drawPoint(x, y)
}
還有一種方式是定義一個(gè)包裝類,并在其中定義一個(gè)包含帶接收者 Lambda 表達(dá)式的參數(shù)的函數(shù)(接收者為 Canvas),然后將擴(kuò)展函數(shù)定義到這個(gè)類中:
class PointPainter(private val paint: Paint) {
fun Canvas.drawPoint(rect: RectF) {
drawPoint(rect.x, rect.y, paint)
}
}
然后定義含有接收者為這個(gè)包裝對(duì)象 Lambda 參數(shù)的函數(shù):
fun bindPointPainter(paint: Paint, drawAction: PointPainter.() -> Unit) {
PointPainter(paint).drawAction()
}
這樣用時(shí)更方便一些:
// in canvas.apply block
bindPointPainter(somePaint) {
drawPoint(rect1)
drawPoint(rect2)
// ...
}不想讓它生效就removeEventlistener啊,想生效的時(shí)候再綁
北大青鳥(niǎo)APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開(kāi)發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_(kāi)發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開(kāi)發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開(kāi)發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開(kāi)發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問(wèn),美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。