北歐四國旅遊局加大中國平台用戶推廣

丹麥國家旅遊局、芬蘭國家旅遊局、挪威國家旅遊局、瑞典國家旅遊局與小紅書合作開啟的線上用戶活動於日前結束。活動期間,北歐四國旅遊局通過與小紅書社區用戶開展話題互動的方式鼓勵博主分享北歐旅遊靈感和美好嚮往,成功吸引到了平台用戶的廣泛關注,話題閱讀量達513萬,並收穫了大量個性化、高品質的內容。

小紅書是目前中國深受年輕人喜愛的生活方式分享社區平台,截至2019年7月,小紅書的註冊用戶已達3億,其中80%為女性用戶,70%為90后,每日社區筆記曝光次數超過30億次。

本次活動中,北歐四國旅遊局均在小紅書平台建立了官方賬號,為平台用戶推薦打卡榜單,並從自然、美食、生活方式三個方面切入,將目的地與內容有溫度地結合,開展了多維度的內容傳播。

童話王國丹麥此次不僅推出了打卡童心童趣的安徒生之旅,還推薦了解讀別緻的設計和品嘗當地的特色美食之旅。

千湖之國芬蘭有着廣袤蒼翠的森林,豐饒而輕盈的波羅的海島嶼,靜謐的拉普蘭荒原以及18.8萬個澄藍的湖泊。芬蘭旅遊局在小紅書平台上推薦了從赫爾辛基一路向拉普蘭前行這一可深入感受芬蘭人生活的旅行線路。

作為世界上擁有最綿長海岸線的國家之一,挪威的峽灣、冰川和山峰,無一不蘊含着偉大的原始力量。此次挪威在小紅書上將其群島與海灣、北極光和冬日美景一一展現給平台用戶,鼓勵遊客前來親身體驗。

瑞典是北歐地區領土面積最大的國家,這裏純凈怡人的自然風光與風格獨特的時尚都市完美契合,吸引着全世界的旅行者。瑞典首都斯德哥爾摩、終年不凍港哥德堡、現代水晶藝術王國斯莫蘭省、濃郁北歐田園風情的斯科納省、擁有冰酒店的拉普蘭,都是此次活動中瑞典重點推薦之地。

本站聲明:網站內容來源再生能源資訊網http://toptour.cn/,如有侵權請聯繫我們,我們將及時處理

【其他文章推薦】

桃園機場租車可以要求甲租乙還服務?

※2020人氣涮嘴零食【牛軋糖】票選為最佳送禮熱賣商品

※省錢度蜜月!想知道哪裡可以找到最優惠的桃園婚紗工作室呢?

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※“上班這黨事”節目推薦牛軋糖,辦公涮嘴零食NO.1

街拍:打扮時尚的個性小姐姐

街拍:打扮時尚的個性小姐姐

時尚的外表下都有一顆愛美的心。打扮時髦的小姐姐,總能傳遞出一種與眾不同的效果,給人帶來不一般的美。今天,跟隨小編來看一下戶外這種時尚的個性小姐姐,有種走路都帶風的形象。

畫面上的小姐姐走在戶外,秀髮飄逸起來,彷彿有一種走路帶風的效果。膚白貌美的外表,與很好的衣品結合,穿出了她的冷艷氣質美,很好的突顯出她的個性特點,讓她個性張揚外露.

美女一身採用黑色,還修飾着各種飄逸的黑紗。在風中自帶飄逸感,讓她更有一種氣質外顯的效果。穿了一款黑色的弔帶背心,披着外套,走路的時候彷彿有一種“社會人”一般,很有氣場。

她穿了一款黑色的闊腿褲,與一雙尖嘴的高跟鞋搭配起來。這款闊腿褲的形象,可以很好的遮掩長腿,讓美腿在視覺上有一種更為勻稱的美感。與上身的黑色背心結合,一身全黑的打扮,帶來一種神秘的女人味道。

小姐姐的這身打扮,很具有時尚美女的個性感。穿衣氣質就能給人一種不一般的印象美。喜歡這種穿搭方式的美女嗎?希望小編分享的她,能給你帶來一點閱讀上的放鬆。

本站聲明:網站內容來源於江西熱線http://www.online.jx.cn,如有侵權請聯繫我們,我們將及時處理

【其他文章推薦】

※廣受好評的【機場接送推薦

租車接送服務需要另外加價嗎?

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※坐月子經驗談-新竹到府坐月子媽媽心得分享與交流

※給婚攝的迎娶婚禮錄影必拍清單,沒拍到您一定會後悔!

※旅遊不求人,帶你掌握小琉球民宿海景攻略

※各類招牌、海報、大圖輸出,急件製作施工!

氣質的緊身打底褲時尚美女

氣質的緊身打底褲時尚美女

打底褲褲腿捲起來穿更加的帥氣時尚清秀的長腿好有魅力,穿出時尚惹人愛更是顯陽光朝氣蓬勃,讓你穿上瞬間就成為長腿美女,吸引眼球卻又不顯突兀,有一件保暖又輕薄的打底褲是必須的,精緻的袋中袋設計採用立體剪裁工藝,經典的純凈素色與彈力T恤廓型結合,讓你溫度與風度同擁有而修身的款型把身材彰顯得淋漓盡致,小清新更顯時尚同時顯瘦效果更棒。

悠閑舒適的打底褲裝扮就是這樣會讓你心情愉悅,既可外穿也可打底的百搭鉛筆褲還可以展現出緊緻的身體線條,像這款採納時髦的收腰設計造型非常的時髦,所有深受眾多時尚美女的青睞,柔軟親膚的布料顯得非常的精緻美觀。能滿足你那充滿詩意的意境,使得你日常穿搭非常的舒服無論是在家休閑每一步都毫無壓力。

打底褲很時尚讓你顯瘦顯氣質,同時對於身材的塑造效果無需太多的形容,看起來更加的優雅大氣穿上就能美美噠。今天上一組打底褲美女。打底褲的好處是讓搭配變得很簡單,尤其是穿春裝的季節,打底褲真的可以大顯神通了。上面圖片中的時尚姑娘,穿一條黑色的打底褲,她的上衣很是色彩繽紛,裏面穿一件水紅色的帶帽衛衣,外面是五顏六色圖案的夾克衫。

萬能搭配潮流范的打底褲會讓你回頭率百分百,讓你看起來氣質高雅穿上回頭率十足,簡單大方的打底褲,穿出女性的獨特魅力,讓人移不開視線。緊身設計的衣服能夠讓人感受到衣服的美感,充滿着女性魅力。穿上緊身褲的你,就會擁有一雙大長腿,非常的苗條,擁有女神的風格。並且打底褲的樣式簡單,能夠讓你擁有靚麗的街頭風格,讓你變得十分有吸引力。

時尚個性,氣質打底褲都很出眾,完全透露出女人的非凡側面,休閑時尚的款式和修長的腰身,是一款流行優雅的打底褲,纖細的腿部優雅大氣,時尚個性,展現出非凡的女神氣質!氣質的緊身打底褲美女走在路上很吸睛優雅,是街頭風格最好的詮釋。幫你抵禦嚴寒穿着舒適讓這條打底裙散發出另一種風情,整體時尚歐美的風格十分的簡約能很好修飾身材從而更加的完美有型。

本站聲明:網站內容來源於江西熱線http://www.online.jx.cn,如有侵權請聯繫我們,我們將及時處理

【其他文章推薦】

※2020桃園婚紗攝影推薦一流團隊

※婚禮籌備好崩潰!該找婚攝還是婚錄?新人必備教戰守則

※月子中心貴鬆鬆,找對到府月嫂省一半,更讓你事半功倍!!

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※新娘必看!桃園自助婚紗推薦名單

引領“頂上”時尚,頭髮的N種想象

引領“頂上”時尚,頭髮的N種想象

俗話說,髮型選不對,顏值再高都白廢!衣服換季,髮型也要跟上速度才夠時髦。如今,假髮不僅是脫髮人士的“剛需”,而已成為配飾中的時髦單品。一頂假髮,可以讓你隨時隨地隨心而變,“從頭開始”實現百分百好感造型。       作為站在潮流尖端的“風尚人物”,明星中沉迷假髮的人不在少數。楊冪就是其中之一。無論是紅色綠色,還是“媽媽卷”“波波頭”,楊冪都玩得不亦樂乎。         吳昕有很多令人印象深刻的短髮造型都是依靠假髮完成的,這款飽滿豐盈的髮型便是其中之一。蓬鬆靈動的髮絲微微翻翹,彰顯了浪漫唯美的法式風情。發尾也可以修剪為碎發,營造多重風格。         如果你的印象中,假髮還是用整個頭套“罩”在頭上那真的就Out了!假髮不僅擅長打造短髮造型,馬尾也同樣可以很精彩。吳昕的這組時尚雜誌大片就是利用彩色發片配搭出嬌俏的馬尾,展現出時尚態度。           戚薇不僅自己熱愛用假髮打造不同造型,還在微博發布了小視頻,“親身上陣”教粉絲如何利用一頂假髮來打造“狗啃式”劉海。           再看范冰冰最經典的戛納紅毯造型之一——“花仙子”。為了貼合造型,范冰冰使用了“劉海發塊”,運用編髮的手法使真發與假髮劉海完美融合,清涼感十足。         假髮能夠達到風格百變的效果,當范冰冰接上蓬鬆的捲髮和灰色的漸變馬尾時,瞬間氣場十足。假髮還增添了層次感,漸變的高馬尾也使整個髮型看起來很有衝擊力,更加炫酷。         此前,吳謹言以“丸子頭”造型登上越南版《時尚先生》封面,這款精心打造的丸子頭飽滿而豐盈,格外搶鏡,鬢角隨性的碎發更表現出她自然本真的獨特氣質。         明星登台演出更離不開假髮。此前,許晴頂着一頭特製的假髮,在賴聲川話劇《如夢之夢》中驚艷亮相。她飾演的顧香蘭,穿上旗袍身姿曼妙,一顰一笑都抓人眼球。風情萬種的造型給她的表演大大加分。       不僅女明星需要假髮來裝扮造型,很多“小鮮肉”登台也離不開假髮“幫忙”。今年春晚上,易烊千璽的髮型就被眼尖的觀眾認出是戴了假髮套。“四字弟弟”假髮造型的話題還在春節期間登上了微博熱搜。工作室也大方承認:“會接頭髮的Tony返鄉過年了,今天上班的是會戴發套的Tony。”     無論是復古“BOB頭”,性感“鎖骨發”,還是瀟洒“黑長直”,假髮都可以助你輕鬆完成想要的造型。假髮發塊可以用來打造頭頂的飽滿豐盈感,改變扁塌現狀。簡單打理就可以營造出的蓬鬆感,增添了慵懶的氣質,搭配空氣劉海,美得很自然。   如果你不需要“頂上遮瑕”,只想換種髮型,也可以從基礎款假髮發套入手,比如偏分發套,微卷的弧度帶來自然柔順的效果,長度適中,對臉型沒有過多限制,適合大多數女生。

本站聲明:網站內容來源於江西熱線http://www.online.jx.cn,如有侵權請聯繫我們,我們將及時處理

【其他文章推薦】

桃園機場租車可以要求甲租乙還服務?

※2020人氣涮嘴零食【牛軋糖】票選為最佳送禮熱賣商品

※省錢度蜜月!想知道哪裡可以找到最優惠的桃園婚紗工作室呢?

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※“上班這黨事”節目推薦牛軋糖,辦公涮嘴零食NO.1

國家文物局:中法達成共識 中國專家將參与巴黎聖母院修復工作

  記者6日從國家文物局獲悉,中法雙方6日在京簽署合作文件,就巴黎聖母院修復開展合作,中國專家將參與巴黎聖母院修復工作。

  根據這份文件,中法雙方將在2020年確定巴黎聖母院保護修複合作的主題、模式及中方專家人選,儘早選派中國專家與法國團隊共同參與現場修復工作。

  文件還明確中法雙方將就陝西秦始皇陵兵馬俑保護開展技術與科學交流及培訓項目。

  “以文明交流超越文明隔閡,以文明互鑒超越文明衝突,以文明共存超越文明優越。”國家文物局局長劉玉珠表示,今年4月巴黎聖母院發生火災後,中法文化遺產主管部門間多次函件來往,討論合作設想。巴黎聖母院是法國乃至歐洲的文明象徵之一,其火災後修復工作受到法國國內的高度重視和國際社會的高度關注。秦始皇陵兵馬俑是享有國際盛譽的中國文化遺產,其保護研究也一直廣受國際關注。選取巴黎聖母院和秦始皇陵兵馬俑這兩個兩國各自最具標誌性的文化遺產開展保護修復和研究,將極大拓展中法文化遺產合作的深度,在世界範圍內產生積極示範效應。(記者施雨岑)

本站聲明:網站內容來源再生能源資訊網http://toptour.cn/,如有侵權請聯繫我們,我們將及時處理

【其他文章推薦】

※廣受好評的【機場接送推薦

租車接送服務需要另外加價嗎?

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※坐月子經驗談-新竹到府坐月子媽媽心得分享與交流

※給婚攝的迎娶婚禮錄影必拍清單,沒拍到您一定會後悔!

※旅遊不求人,帶你掌握小琉球民宿海景攻略

※各類招牌、海報、大圖輸出,急件製作施工!

分娩前的疑問:產前真假產痛的區別在哪?

懷孕10個月,一朝分娩,怎樣來區分真假產前陣痛呢?

Q:如何區分真的陣痛和假信號?

A:有一種簡單的測試方法:躺在水溫不要過高的浴盆里,“準備式”陣痛會在水中停止,而真正的分娩陣痛則會變得更強烈。由於這個測試應該在臨近預產期的時間做,因此,能夠準確地區分是否真的陣痛來臨了。

* 在醫院,助產士和醫生還會在這個時候,通過檢查子宮由於收縮是否發生了變化來確定寶寶是否準備好了。

Q:何謂早期破水?

A:早期破水是指孕婦不管是否已足月,在還沒有真正進入產程之前,包在胎兒外的胎膜(羊膜)就發生自然破裂,羊水流出,胎兒失去羊膜的保護。

Q:是什麼原因引起?發生的比例?

A:發生早期破水的原因並不是很明確。健康完好的羊膜具有很好的韌性,但當內外在環境改變時,可能會造成羊膜的某一點抗壓性降低,而形成一個壓力出口,這些情況包括感染、子宮頸的閉鎖不全、羊水過多症、胎位不正、外傷外力的壓迫和多胞胎妊娠等,也有部分並無明顯的原因。據不同中心的統計,發生率大約佔所有生產的10%左右。

Q:對孕婦會有危險嗎?

A:破水本身對孕婦是沒有危險,但應試圖找出導致破水的原因加以處理。例如是否有感染髮生?孕婦是否是一個高危險妊娠狀態?若是,則應做適當的處置。

Q:對寶寶會有危險嗎?

A:足月

要看破水時的周數和原因而定。若破水時妊娠都超過37-38周,已可算是足月兒,若無明顯感染癥狀如發燒、胎心加速、驗血白血球升高等情況,自然情況下九成會在24小時內發生陣痛,高達九成會在两天內出生。

未足月

若未滿36周或更早,則要考慮到早產所并行的問題,此時比較會對小寶寶造成危險。若有感染的情形,可立即用抗生素治療,但有時早產造成的危險比感染還嚴重。

特別提醒

另一種情況比較危急的是已生過小孩的經產婦,有時破水並子宮頸開,臍帶若隨着羊水往外流出,會造成臍帶脫出,血流入胎兒會受阻,會造成胎兒窘迫,就非常危險了!所幸這樣的情況並不常見。

: 分娩期相關

本站聲明:網站內容來源媽咪愛嬰網http://www.baby611.com,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※2020桃園婚紗攝影推薦一流團隊

※婚禮籌備好崩潰!該找婚攝還是婚錄?新人必備教戰守則

※月子中心貴鬆鬆,找對到府月嫂省一半,更讓你事半功倍!!

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※新娘必看!桃園自助婚紗推薦名單

輕鬆分娩:孕婦分娩技巧

十月懷胎一朝分娩。每當產期臨近,准媽媽難免會心裏緊張,不知所措,其實大可不必。

首先識別分娩的先兆。正式臨產前,孕婦往往會出現一些癥狀,預示着即將正式臨產,如不規則子宮收縮,常在夜間出現而白天消失,每次間隔時間可長可短,每次持續時間不長於30秒,孕婦可感到輕微腰酸,下腹輕微脹痛。正式臨產前1—2天陰道出現少量血性粘液自陰道流出,稱為見紅。有些孕婦可於正式臨產前發生胎膜破裂,羊水自陰道流出,此時孕婦應卧床,立即到醫院就診,特別是臀位的產婦,要預防臍帶脫垂。

由於人們對分娩的不正確認識,致使普遍存在對分娩所產生的疼痛的恐懼,恐懼則會導致緊張,緊張更加劇了疼痛,這就直接影響分娩的進程,並對產婦的心理產生影響。其實,我們可以通過以下一些技巧來應對。

一是臨產後由家人陪伴,由助產士指導,分散注意力,一起扯一扯產婦感興趣的話題,並講解分娩的過程,使產婦掌握分娩知識,有效地緩解分娩過程中的不適,從而降低對宮縮的感受力。

二是調節呼吸的頻率和節律,當運動或精神緊張時,呼吸頻率就加劇,主動調整呼吸的頻率和節律,可緩解由於分娩所產生的壓力,增強產婦的自我控制意識,當轉移注意力的方法不能幫助產婦緩解分娩的不適時,可選擇慢-胸式呼吸,呼吸的頻率調整為正常的1/2,隨着宮縮頻率和強度的增加則可選擇淺式呼吸,其頻率為正常呼吸的2倍,不適達到最強的程度選用喘吹式呼吸:4次短淺呼吸后吹一口氣。

三是適當採用一些可令產婦放鬆的技巧。如由家屬或助產士觸摸產婦緊張部位,並指導其放鬆,反覆的表揚鼓勵產婦並講解進展情況,必要時可使用笑氣鎮痛。對有一定音樂欣賞能力的產婦選擇舒緩的音樂放鬆。

當宮口開全時,產婦疼痛有所緩解,有種大便感,工作人員會指導產婦屏氣用力的正確方法,此時產婦要調整自己的心理和體力,积極配合,正確用力,以加速產程進展,否則消耗體力影響產程進展而使產程延長,胎兒易發生宮內窒息及顱內出血。

: 分娩期相關

本站聲明:網站內容來源媽咪愛嬰網http://www.baby611.com,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

桃園機場租車可以要求甲租乙還服務?

※2020人氣涮嘴零食【牛軋糖】票選為最佳送禮熱賣商品

※省錢度蜜月!想知道哪裡可以找到最優惠的桃園婚紗工作室呢?

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※“上班這黨事”節目推薦牛軋糖,辦公涮嘴零食NO.1

《Java多線程面試題》系列-創建線程的三種方法及其區別

1. 創建線程的三種方法及其區別

1.1 繼承Thread類

首先,定義Thread類的子類並重寫run()方法:

package com.zwwhnly.springbootaction.javabase.thread;

public class MyFirstThread extends Thread {
    @Override
    public void run() {
        for (int i = 0; i < 5; i++) {
            System.out.printf("[MyFirstThread]輸出:%d,當前線程名稱:%s\n",
                    i, getName());
        }
    }
}

然後,創建該子類的實例並調用start()方法啟動線程:

package com.zwwhnly.springbootaction.javabase.thread;

public class ThreadTest {
    public static void main(String[] args) {
        System.out.println("主線程開始執行,當前線程名稱:" +
                Thread.currentThread().getName());

        Thread firstThread = new MyFirstThread();
        firstThread.start();

        System.out.println("主線程執行結束,當前線程名稱:" +
                Thread.currentThread().getName());
    }
}

運行結果如下所示:

主線程開始執行,當前線程名稱:main

主線程執行結束,當前線程名稱:main

[MyFirstThread]輸出:0,當前線程名稱:Thread-0

[MyFirstThread]輸出:1,當前線程名稱:Thread-0

[MyFirstThread]輸出:2,當前線程名稱:Thread-0

[MyFirstThread]輸出:3,當前線程名稱:Thread-0

[MyFirstThread]輸出:4,當前線程名稱:Thread-0

從運行結果可以看出以下2個問題:

  1. 程序中存在2個線程,分別為主線程main和自定義的線程Thread-0。
  2. 調用firstThread.start();,run()方法體中的代碼並沒有立即執行,而是異步執行的。

查看Thread類的源碼,可以發現Thread類實現了接口Runnable:

public class Thread implements Runnable {
    // 省略其它代碼
}

這裡是重點,面試常問!

1.2 實現Runnable接口(推薦)

首先,定義Runnable接口的實現類並實現run()方法:

package com.zwwhnly.springbootaction.javabase.thread;

public class MySecondThread implements Runnable {
    @Override
    public void run() {
        for (int i = 0; i < 5; i++) {
            System.out.printf("[MySecondThread]輸出:%d,當前線程名稱:%s\n",
                    i, Thread.currentThread().getName());
        }
    }
}

然後,調用Thread類的構造函數創建Thread實例並調用start()方法啟動線程:

package com.zwwhnly.springbootaction.javabase.thread;

public class ThreadTest {
    public static void main(String[] args) {
        Runnable target = new MySecondThread();
        Thread secondThread = new Thread(target);
        secondThread.start();
    }
}

運行結果如下所示:

主線程開始執行,當前線程名稱:main

主線程執行結束,當前線程名稱:main

[MySecondThread]輸出:0,當前線程名稱:Thread-0

[MySecondThread]輸出:1,當前線程名稱:Thread-0

[MySecondThread]輸出:2,當前線程名稱:Thread-0

[MySecondThread]輸出:3,當前線程名稱:Thread-0

[MySecondThread]輸出:4,當前線程名稱:Thread-0

可以看出,使用這種方式和繼承Thread類的運行結果是一樣的。

1.3 實現Callable接口

首先,定義Callable接口的實現類並實現call()方法:

package com.zwwhnly.springbootaction.javabase.thread;

import java.util.Random;
import java.util.concurrent.Callable;

public class MyThirdThread implements Callable<Integer> {
    @Override
    public Integer call() throws Exception {
        Thread.sleep(6 * 1000);
        return new Random().nextInt();
    }
}

然後,調用FutureTask類的構造函數創建FutureTask實例:

Callable<Integer> callable = new MyThirdThread();
FutureTask<Integer> futureTask = new FutureTask<>(callable);

最後,調用Thread類的構造函數創建Thread實例並調用start()方法啟動線程:

package com.zwwhnly.springbootaction.javabase.thread;

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;

public class ThreadTest {
    public static void main(String[] args) {
        System.out.println("主線程開始執行,當前線程名稱:" +
                Thread.currentThread().getName());

        Callable<Integer> callable = new MyThirdThread();
        FutureTask<Integer> futureTask = new FutureTask<>(callable);
        new Thread(futureTask).start();

        try {
            System.out.println("futureTask.isDone() return:" + futureTask.isDone());

            System.out.println(futureTask.get());

            System.out.println("futureTask.isDone() return:" + futureTask.isDone());
        } catch (InterruptedException | ExecutionException e) {
            e.printStackTrace();
        }

        System.out.println("主線程執行結束,當前線程名稱:" +
                Thread.currentThread().getName());
    }
}

運行結果如下所示:

主線程開始執行,當前線程名稱:main

futureTask.isDone() return:false

-1193053528

futureTask.isDone() return:true

主線程執行結束,當前線程名稱:main

可以發現,使用Callable接口這種方式,我們可以通過futureTask.get()獲取到線程的執行結果,而之前的2種方式,都是沒有返回值的。

注意事項:調用futureTask.get()獲取線程的執行結果時,主線程會阻塞直到獲取到結果。

阻塞效果如下圖所示:

1.4 區別

以下是重點,面試常問!

  1. Java中,類僅支持單繼承,如果一個類繼承了Thread類,就無法再繼承其它類,因此,如果一個類既要繼承其它的類,又必須創建為一個線程,就可以使用實現Runable接口的方式。
  2. 使用實現Runable接口的方式創建的線程可以處理同一資源,實現資源的共享。
  3. 使用實現Callable接口的方式創建的線程,可以獲取到線程執行的返回值、是否執行完成等信息。

關於第2點,可以通過如下示例來理解。

假如我們總共有10張票(共享的資源),為了提升售票的效率,開了3個線程來售賣,代碼如下所示:

package com.zwwhnly.springbootaction.javabase.thread;

public class SaleTicketThread implements Runnable {
    private int quantity = 10;

    @Override
    public void run() {
        while (quantity > 0) {
            System.out.println(quantity-- + " is saled by " +
                    Thread.currentThread().getName());
        }
    }
}
public static void main(String[] args) {
    Runnable runnable = new SaleTicketThread();
    Thread saleTicketThread1 = new Thread(runnable);
    Thread saleTicketThread2 = new Thread(runnable);
    Thread saleTicketThread3 = new Thread(runnable);

    saleTicketThread1.start();
    saleTicketThread2.start();
    saleTicketThread3.start();
}

因為3個線程都是異步執行的,因此每次的運行結果可能是不一樣,以下列舉2次不同的運行結果。

第1次運行結果:

10 is saled by Thread-0

8 is saled by Thread-0

7 is saled by Thread-0

5 is saled by Thread-0

9 is saled by Thread-1

3 is saled by Thread-1

2 is saled by Thread-1

1 is saled by Thread-1

4 is saled by Thread-0

6 is saled by Thread-2

第2次運行結果:

10 is saled by Thread-0

9 is saled by Thread-0

8 is saled by Thread-0

7 is saled by Thread-0

6 is saled by Thread-0

5 is saled by Thread-0

3 is saled by Thread-0

2 is saled by Thread-0

4 is saled by Thread-2

1 is saled by Thread-1

如果將上面的SaleTicketThread修改成繼承Thread類的方式,就變成了3個線程各自擁有10張票,即變成了30張票,而不是3個線程共享10張票。

2. Thread類start()和run()的區別

2.1 示例

因為實現Runnable接口的優勢,基本上實現多線程都使用的是該種方式,所以我們將之前定義的MyFirstThread也修改為實現Runnable接口的方式:

package com.zwwhnly.springbootaction.javabase.thread;

public class MyFirstThread implements Runnable {
    @Override
    public void run() {
        for (int i = 0; i < 5; i++) {
            System.out.printf("[MyFirstThread]輸出:%d,當前線程名稱:%s\n",
                    i, Thread.currentThread().getName());
        }
    }
}

然後仍然沿用之前定義的MyFirstThread、MySecondThread,我們先看下調用start()的效果:

package com.zwwhnly.springbootaction.javabase.thread;

public class ThreadTest {
    public static void main(String[] args) {

        System.out.println("主線程開始執行,當前線程名稱:" +
                Thread.currentThread().getName());

        Thread firstThread = new Thread(new MyFirstThread());

        Runnable target = new MySecondThread();
        Thread secondThread = new Thread(target);

        firstThread.start();
        secondThread.start();

        System.out.println("主線程執行結束,當前線程名稱:" +
                Thread.currentThread().getName());
    }
}

運行結果(注意:多次運行,結果可能不一樣):

主線程開始執行,當前線程名稱:main

[MyFirstThread]輸出:0,當前線程名稱:Thread-0

[MyFirstThread]輸出:1,當前線程名稱:Thread-0

[MySecondThread]輸出:0,當前線程名稱:Thread-1

主線程執行結束,當前線程名稱:main

[MySecondThread]輸出:1,當前線程名稱:Thread-1

[MySecondThread]輸出:2,當前線程名稱:Thread-1

[MySecondThread]輸出:3,當前線程名稱:Thread-1

[MySecondThread]輸出:4,當前線程名稱:Thread-1

[MyFirstThread]輸出:2,當前線程名稱:Thread-0

[MyFirstThread]輸出:3,當前線程名稱:Thread-0

[MyFirstThread]輸出:4,當前線程名稱:Thread-0

可以看出,調用start()方法后,程序中有3個線程,分別為主線程main、Thread-0、Thread-1,而且執行順序不是按順序執行的,存在不確定性。

然後將start()方法修改為run()方法,如下所示:

firstThread.run();
secondThread.run();

此時的運行結果如下所示(多次運行,結果是一樣的):

主線程開始執行,當前線程名稱:main

[MyFirstThread]輸出:0,當前線程名稱:main

[MyFirstThread]輸出:1,當前線程名稱:main

[MyFirstThread]輸出:2,當前線程名稱:main

[MyFirstThread]輸出:3,當前線程名稱:main

[MyFirstThread]輸出:4,當前線程名稱:main

[MySecondThread]輸出:0,當前線程名稱:main

[MySecondThread]輸出:1,當前線程名稱:main

[MySecondThread]輸出:2,當前線程名稱:main

[MySecondThread]輸出:3,當前線程名稱:main

[MySecondThread]輸出:4,當前線程名稱:main

主線程執行結束,當前線程名稱:main

可以看出,調用run()方法后,程序中只有一個主線程,自定義的2個線程並沒有啟動,而且執行順序也是按順序執行的。

1.2 總結

以下是重點,面試常問!

  • run()方法只是一個普通方法,調用之後程序會等待run()方法執行完畢,所以是串行執行,而不是并行執行。
  • start()方法會啟動一個線程,當線程得到CPU資源後會自動執行run()方法體中的內容,實現真正的併發執行。

3. Runnable和Callable的區別

在文章前面的章節中(1.2 實現Runnable接口 和1.3 實現Callable接口),我們了解了如何使用Runnable、Callable接口來創建線程,現在我們分別看下Runable和Callable接口的定義,其中,Runable接口的定義如下所示:

public interface Runnable {
    public abstract void run();
}

Callable接口的定義如下所示:

public interface Callable<V> {
    V call() throws Exception;
}

由此可以看出,Runnable和Callable的區別主要有以下幾點:

  1. Runable的執行方法是run(),Callable的執行方法是call()
  2. call()方法可以拋出異常,run()方法如果有異常只能在內部消化
  3. 實現Runnable接口的線程沒有返回值,實現Callable接口的線程能返回執行結果
  4. 實現Callable接口的線程,可以和FutureTask一起使用,獲取到線程是否完成、線程是否取消、線程執行結果,也可以取消線程的執行。

4. 源碼及參考

源碼地址:,歡迎下載。

如果覺得文章寫的不錯,歡迎關注我的微信公眾號:「申城異鄉人」,所有博客會同步更新。

如果有興趣,也可以添加我的微信:zwwhnly_002,一起交流和探討技術。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※廣受好評的【機場接送推薦

租車接送服務需要另外加價嗎?

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※坐月子經驗談-新竹到府坐月子媽媽心得分享與交流

※給婚攝的迎娶婚禮錄影必拍清單,沒拍到您一定會後悔!

※旅遊不求人,帶你掌握小琉球民宿海景攻略

※各類招牌、海報、大圖輸出,急件製作施工!

日本天皇巡遊路線,有風景也有故事

今年因為日本新天皇即位,原定10月22日進行的新天皇接受國民祝福的遊行活動——“祝賀御列之儀”推遲到11月10日舉行。天皇400米長的巡遊車隊從皇宮出發,經過二重橋,向櫻田門進發,在兩個地方便於長時間看到車隊,一是青山大道,即赤坂警察署開始到青山一丁目車站之間的約1.3公里的直線道路,二是沒有樹木遮擋的皇居前廣場。車隊目的地是赤坂御所。這一路線與平成時代開啟時天皇的巡遊路線有所不同,避開了高速公路的高架橋下的道路,從而方便更多的民眾站在路邊觀看。

二重橋是指鋼鐵製造的正門鐵橋。正門(江戶城西面的丸大手門)平時是關閉的,只有天皇即位大典和天皇、皇后、皇太后大葬儀式等特別事宜時或外賓來訪時才使用。使用的順序為:皇居前廣場——正門石橋——正門——正門鐵橋——宮殿。裏面的鐵橋在江戶城的西丸下乘橋的位置,早年曾因護城河水深,舊橋較低,所以在橋上再搭一座橋,為上下兩層,所以叫“二重橋”。

鐵橋是明治21年(1888年)替換上去的,所以橋身不是兩層的。二重橋是日本最有歷史感和神秘感的橋樑。

前面的石橋在江戶城的西丸大手橋的位置,石橋是明治20年(1887年)建造的。由於構造為兩個石拱形造型,所以再三地被誤認為“二重橋”。還有一種說法是,“因為外面的石橋和裏面的鐵橋都建造在同一個壕溝上,所以叫二重橋”,這種說法也是錯的。

橋下有護城河,水平如鏡,楊柳依依,景色宜人,是遊客必到之地,它是名副其實的連接民間和皇宮的橋,被公認為皇宮最美之地。

皇居前廣場,又叫皇宮外苑,江戶時代,許多達官顯貴在這兒建私宅。到了明治時代,房屋被政府收回,成為明治政府的兵營。後來伊藤博文命令撤去一切多餘建築物,種上樹木,延續至今成了綠樹成蔭、寬闊宜人的廣場。1947年,皇居前廣場正式向民眾開放。如今,對日本人來說,來到皇居前廣場,就是到了離天皇最近的地方,每年春秋兩次皇宮對一般民眾開放,人們從廣場走過二重橋,進入皇宮。在宮殿前,萬眾歡呼,聆聽天皇的聲音。

皇居前廣場里有個和田倉噴水公園,旁邊還有個免費的休息處和一家時尚餐廳,是遊人休憩、就餐的好地方。廣場里還有一大片松樹林,鬱郁蔥蔥,生機勃發,是東京中心難得的綠色。

連接東京車站和皇居前廣場的是一條寬闊的大道。這條路叫“行幸道路”,天皇到地方巡視,需要乘火車,就先乘車通過這條道路到東京車站。道路兩邊有排列整齊的高大銀杏樹,到了秋天樹恭弘=叶 恭弘金黃,蔚為壯觀。

平日的清晨以及假日,在皇居前廣場可以看到很多跑步運動的人,他們圍繞皇宮慢跑。在東京的中心,有這麼一大片風景秀麗又大氣的公共空間,又能眺望日本皇宮,因此皇居前廣場成為觀光勝地,來自世界各地的遊客在這兒流連忘返。花2000日元,可乘坐馬車在皇宮周邊繞一圈,感受傳統和現代交錯的景緻。

巡遊車隊途經的國會議事堂是1936年建成的,是日本的政治中心,國會在這裏開會議事。建築物是左右對稱的,左邊是眾議院,右邊是參議院。近年,國會議事堂也開放讓民眾参觀,眾議院每日開放参觀,參議院是工作日開放,但是國會開會前一個小時到散會這一時間段是無法参觀的,可以在規定場所拍照,但是不能錄視頻。

本站聲明:網站內容來源再生能源資訊網http://toptour.cn/,如有侵權請聯繫我們,我們將及時處理

【其他文章推薦】

※2020桃園婚紗攝影推薦一流團隊

※婚禮籌備好崩潰!該找婚攝還是婚錄?新人必備教戰守則

※月子中心貴鬆鬆,找對到府月嫂省一半,更讓你事半功倍!!

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※新娘必看!桃園自助婚紗推薦名單

“雙11”十年 外商也想分杯羹

據德國《商報》報道,去年“雙11”,中國的電商平台賺得盆滿缽滿。西方的著名購物節日望塵莫及。今年,中國人的狂熱購物數據有望再次實現突破。這表明,經濟放緩和貿易摩擦並沒有給中國普通消費者的購物慾造成負擔。報道還指出,許多德國製造商和經銷商尚未好好利用這個機會。

據美國零售媒體《連鎖時代》報道,中國的“雙11”購物節已經成為全球最大的消費盛會之一,美國的零售行業應該擁抱中國的“雙11”活動。報道指出,美國本土有大量了解“雙11”的中國遊客、學生和華人,也開始有更多的商家接入中國的移動支付。這意味着,美國本土有條件加入這一全世界的消費盛會。

2009年,中國電商平台將11月11日定義為“購物狂歡節”,進行打折促銷活動。由此,每年的11月11日成為中國消費者的網購福利日。近幾年,隨着“雙11”的規模與影響力不斷擴大,這一購物節開始得到越來越多外商的關注。

“雙11”購物節能夠發展到如此規模,是中國經濟發展水平不斷提升、中國作為世界第一製造業大國的地位和世界網絡大國的身份完美結合的產物。其中,建構在網絡技術之上的電商,更是在管理、物流、品牌建設等方面發揮了關鍵作用。

隨着“雙11”購物節的影響力不斷提升,越來越多外商開始投入大量精力備戰“雙11”,以期在這場消費盛會中分得一杯羹。中國市場的巨大潛力是“雙11”購物節吸引外商的重要因素。當今的中國市場具有以下特質:規模大,這源於近14億人口的需求;多層次,隨着人民收入水平不斷提高,國內消費不斷升級,消費也在向多層次快速演進;多元化,很多個性化、小眾化的產品銷售也不錯,為商戶的多樣化經營提供了巨大空間。

通過這幾年的發展,“雙11”購物節在中國經濟發展乃至國際貿易中承擔的角色也有了改變。以最近幾年的銷售規模看,“雙11”購物節在一定程度上能夠作為衡量國內消費結構、消費水平和前景預測的一個重要指標。同時,“雙11”購物節對於促進國際貿易尤其是中國的進口貿易具有积極作用,是一個極具價值的品牌。

10年來,“雙11”購物節的規模呈現出持續擴張的態勢。不過,正如經濟運行有周期,購物節體現出來的大眾消費熱潮也不可能無限擴張。因此,接下來,“雙11”購物節的擴張速度會有一定調整。隨着新技術的應用、網絡基礎設施的升級以及電商經營能力的提升,消費者購物的便利性和精準性還會提升。“雙11”作為不可替代的購物狂歡節,未來發展前景依然明朗。

為保證“雙11”購物節的影響力與效益,電商平台與政府都應採取一定措施。電商平台要避免惡性競爭,不能完全依賴低價,更不能虛構原價,採取先漲價后降價的方式進行虛假促銷。電商平台要從產品和服務的質量上下功夫,打造令消費者和商家信賴的平台,實現三方共贏。另外,電商平台也要积極承擔社會責任,做公益事業的積极參与者和樹立良好社會風氣的重要貢獻者。政府要做好監督和服務工作,保障電商平台合法經營,公平競爭,防止“劣幣驅逐良幣”,同時,保障消費者權益,讓消費者真正買到安全可靠、貨真價實的商品。

本站聲明:網站內容來源再生能源資訊網http://toptour.cn/,如有侵權請聯繫我們,我們將及時處理

【其他文章推薦】

桃園機場租車可以要求甲租乙還服務?

※2020人氣涮嘴零食【牛軋糖】票選為最佳送禮熱賣商品

※省錢度蜜月!想知道哪裡可以找到最優惠的桃園婚紗工作室呢?

台東人氣名產台東人氣伴手禮,熱門獨家商品,現貨供應中

※“上班這黨事”節目推薦牛軋糖,辦公涮嘴零食NO.1