1. 程式人生 > >Java中執行緒池,你真的會用嗎?

Java中執行緒池,你真的會用嗎?

  我騎著小毛驢,喝著大紅牛哇,哩個啷格里格朗,別問我為什麼這木開心,如果活著不是為了浪蕩那將毫無意義      今天來捋一捋我們平日經常用的instanceof和typeof的一些小問題      typeof:      typeof裡面是由一個小坑的  我們今天著重來研究一下這個小坑      假設現在問一個問題          typeof(null) 結果為啥  可能你會覺得他是null   或者是Object ,可能有的同學會說那當然是null了      其實正確答案是Object,那你知道為什麼結果是Object嗎,看到這你可能覺得你怎麼這木囉嗦,不是我囉嗦,是因為學習嘛,不刨根問底就沒意思了      下面我們來說說原因:因為在 JS 的最初版本中,使用的是 32 位系統,為了效能考慮使用低位儲存了變數的型別資訊,000 開頭代表是物件,然而 null 表示為全零,所以將它錯誤的判斷為 object 。                    雖然現在的內部型別判斷程式碼已經改變了,但是對於這個 Bug 卻是一直流傳下來      在 ES6 中曾有關於修復此 bug 的提議,提議中稱應該讓 typeof null === 'null',但是該提議被無情的否決了,自此 typeof null 終於不再是一個 bug,而                 是一個 feature,並且永遠不會被                 修復。      下面是我從網上找的第一版javascript 實現中,判斷型別的程式碼是這麼寫的:      能看懂就看看,看不懂也無所謂,反正我也看不懂      複製程式碼      if (JSVAL_IS_VOID(v)) {  // (1)      type = JSTYPE_VOID;      } else if (JSVAL_IS_OBJECT(v)) {  // (2)      obj = JSVAL_TO_OBJECT(v);      if (obj &&      (ops = obj->map->ops,      ops == &js_ObjectOps      ? (clasp = OBJ_GET_CLASS(cx, obj),      clasp->call || clasp == &js_FunctionClass) // (3,4)      : ops->call != 0)) {  // (3)      type = JSTYPE_FUNCTION;      } else {      type = JSTYPE_OBJECT;      }      } else if (JSVAL_IS_NUMBER(v)) {      type = JSTYPE_NUMBER;      } else if (JSVAL_IS_STRING(www.ysyl157.com)) {      type = JSTYPE_STRING;      } else if (JSVAL_IS_BOOLEAN(v)) {      type = JSTYPE_BOOLEAN; class Flask(object):     def wsgi_app(self, environ, start_response):         ctx = self.request_context(environ)         ctx.push(www.dasheng178.com/)         error = None         try:             try:                 response www.mcyllpt.com= self.full_dispatch_request()             except Exception as e:                 error = e                 response = self.handle_exception(e)             except:                 error = sys.exc_info(www.hjylp178.com)[1]                 raise             return response(environ,www.meiwanyule.cn start_response)         finally:             if self.should_ignore_error(error):                 error = None             ctx.auto_pop(error)      }      複製程式碼      instanceof      下面我們來說一說instanceof,今天我們著重來看一看實現原理      instanceof的實現原理是通過判斷物件的原型鏈中是不是能找到型別的 prototype      下面我們自己來寫一個類似於instanceof的函式      複製程式碼      function instanceof(left, right) {      // 獲得型別的原型      let prototype = right.prototype      // 獲得物件的原型      left = left.__proto__      // 判斷物件的型別是否等於型別的原型      while (true) {      if (left === null)      return false      if (prototype === left)      return true      left = left.__proto__      }      }      複製程式碼      這木無趣的文章你竟然能看到這裡,說,是不是對我有意思?要是你是女孩子,請聯絡我好吧,我這代養十八至二十五週歲的適齡女孩子,什麼你是男的,那看完抓緊時間gun,等我啥時候      開始搞基了我再通知你      程式碼成就萬世基基沙鎮海 夢想永在凌雲意意氣風發