第一篇:背單詞哪個好
看誰是強者,十四大背單詞軟件、在線背單詞評測報告
我是一名英語培訓學校的專職老師,來學校培訓的學生中有許多基礎比較差、擁有的單詞量非常少,直接造成學習英語困難。我教學的一個重要的方面就是提高學習者詞匯量,所以在日常的工作中特別關注各種背單詞的方法和輔助工具。
這學期我開始了新概念英語的教學,為了采取更好的輔助工具幫助學生記憶單詞我對市場中的各種背單詞的軟件和在線背單詞的網站進行了新概念第一冊第一單元背誦效果的橫向測試,以下是我測試的結果,供各位學習者和老師、家長借鑒。軟件類: ①新東方背單詞
《新東方背單詞》的特點就是內容全面權威,囊括中小學、許國璋、新概念、職稱、大學、研究生、新東方出國考試(GRE、TOEFL、GMAT、LSAT、雅思)詞匯,適合從零起點到高級英語學習人員的全面需要。遵循多種記憶法則:例如詞綴、詞根記憶法、比較記憶法、單詞舉例記憶法等。
我組織三名成績接近的學生進行了新概念第一單元的學習和測驗。一個小時測試結果:總學習:175詞,已知: 47詞,生詞: 128詞
測驗結果:記住40詞/小時 正確率:31% 學生反饋:新東方背單詞的例句有些簡單,不太具有典型性。比如excuse,的例句是“Excuse me!“ 和“Excuse me.What's the time ?兩個例句的知識點是相同的。
我的評價:感覺《新東方背單詞》對學習英語的方式方法很有心得,它利用不同的學習方式來加強單詞的記憶效果,比起其他軟件公司開發的單詞記憶軟件,具有更強的教學性,畢竟是多年積累的教學經驗,更易于學習者的學習。而且有幾個不錯的背單詞的游戲,能引起學生的學習興趣,寓教于樂。
②輕輕松松背單詞
蒲公英也算是背單詞軟件行業里的佼佼者了,估計許多學習英語的人都用過這款《輕輕松松背單詞》。這款軟件最大的特點就是單詞和例句的發音是標準的美音而且是美國專家朗讀。我組織三名成績接近的學生進行了新概念第一單元的學習和測驗。一個小時測試結果:總學習:175詞,已知: 47詞,生詞: 128詞 測驗結果:記住39詞/小時 正確率:30% 學生反饋:《輕松背單詞》的發音比較好,例句也是標準的發音不是那種電腦合成的讓人覺得難受的聲音,而且有不錯的記憶游戲可以在游戲中加深記憶。
我的評價:《輕松背單詞》和《新東方背單詞》作為軟件類背誦單詞中最優秀的幾個,功能實際上已經有較強的趨同性?!遁p松背單詞》的確可以作為學習英語一個有效的輔助工具。
③瘋狂單詞
這款軟件界面的設計很有web2.0的風格,很是卡哇伊。有十種主要的功能,能滿足記憶單詞的要求。突出的特點,就是聯想功能了,可以設置聯想的參數,達到舉一反三的效果。但是相比于前兩款軟件,因為容量關系,這款還不及前兩款的1/10,雖然短小精悍,但是一些功能也是慘不忍睹,比如發音,那種毫無感情、蹩腳的電腦合成發音就讓我崩潰了。免費版的詞庫少的可憐,根本沒有《新概念英語》的,為了測試他的效果,我還是升級為專業版進行了測試。順便提一句,軟件主頁七星閣的制作真是太不專業,建議作者重新制作吧。以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果。
一個小時測試結果:總學習:165詞,已知: 43詞,生詞: 122詞 測驗結果:記住37詞/小時 正確率:30% 學生反饋:《瘋狂背單詞》的界面很漂亮,但是發音根本聽不清,讓人難受。對單詞的測驗方法挺多的,填字母、填單詞等難易程度各異的測試,挺不錯的
我的評價:《瘋狂單詞》的設計應該說是非常有特點,我經過對四級單詞的記憶,覺得界面設計合理,例句的選擇和聯想記憶是其比較吸引人的地方。這么小的容量達到這個效果,很不錯了。
④單詞快車
打開軟件,把我嚇了一跳,真是黑板一塊啊,設計者也太不拘小節了吧。還是先摒棄外貌黨的作風,自己先做個試用吧,不能因太主觀而錯個一款優秀的軟件。我自己做了一個學習和記憶的測試,怎么說呢,和前面幾款不在一個層面。但是也很有特點,就是可以用話筒錄下自己的發音和軟件的發音進行比對,而且對教材里例句的收集比較全。以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果。一個小時測試結果:總學習:165詞,已知: 43詞,生詞: 122詞
測驗結果:記住40詞/小時 正確率:32.7% 學生反饋:不太好,試用軟件覺得有點壓抑,單詞發音也是電腦合成,例句和單詞分開了,不太方便學習。
我的評價:《單詞快車》的設計者肯定是花費了大量的時間來進行準備的,因為我看到每個單詞都有非常詳盡的例句,但是首先單詞的發音是電腦合成不利于使用者提高聽力,其次這款軟件的測試功能不是特別合理。
⑤單詞風暴
這款軟件的設計可謂獨具匠心,有九種記憶方式可以選擇。每種都有自己的特色,我最喜歡的是對話背單詞,卡通助手類似于QQ聊天的方式進行測試,還有那個自動連接網絡查找單詞釋義、例句的功能非常的實用。每次學習單詞都能看到單詞的英文解釋和對應圖片,令人記憶深刻。
以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果。一個小時測試結果:總學習:165詞,已知: 40詞,生詞: 125詞
測驗結果:記住41詞/小時 正確率:32.8% 學生反饋:非常好玩,有漢語解釋,點擊后又成了英文單詞,而且單詞還有詞根前后綴解釋,單詞還有圖片,單詞記憶有三種記憶方式,可以自己根據水平進行選擇。我的評價:《單詞風暴》一款不錯的記憶軟件,有快速、常規、精確三種學習模式,學習者可以根據自己的水平和時間來選擇,助記信息功能比較實用。
⑥奇跡英語
《奇跡英語》功能比較全、詞庫豐富、真人發聲、圖文并茂是它的優點,另外還有句庫、閱讀、音標等功能,循環記憶功能相當實用。
以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果。一個小時測試結果:總學習:165詞,已知: 40詞,生詞: 132詞
測驗結果:記住37詞/小時 正確率:28% 學生反饋:測驗的方式有點少,不能適應不同水平的學生 我的評價:《奇跡英語》從設計的角度來講比《新東方背單詞》有一定差距,還有不少需要改進的地方。
⑦我愛背單詞
《我愛背單詞》一款不錯的軟件,包含詞匯量豐富,功能比較全有多種背單詞的模式,從詳細至每字不漏的六維速記到懸浮窗口簡單顯示的時刻不覺背單詞,學習者可以根據自己的水平和時間隨意選擇適合的模式。
以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果。一個小時測試結果:總學習:175詞,已知: 43詞,生詞: 125詞 測驗結果:記住詞37/小時 正確率:29.6% 學生反饋:電腦合成讀音比較難受,像是聽機器人是說話,語速有點快。
我的評價:《我愛背單詞》功能比較全,角斗士英語的各類軟件集合到一起,能有效幫助學習者提高英語水平。但是電腦合成讀音的確讓人受不了,還有不少細節問題沒有很好解決。
⑧大嘴啃英語
蒲公英的又一款背單詞軟件,我經過使用感覺就是輕輕松松背單詞的姊妹篇和簡略版,功能比較少,但是也能滿足背單字的一般需求,我覺得適合中小學生使用吧。以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果。一個小時測試結果:總學習:145詞,已知: 43詞,生詞: 102詞 測驗結果:記住詞31/小時 正確率:30.4% 學生反饋:簡單的軟件,和自己背詞典差不多。
我的評價:比起《輕輕松松背單詞》這款軟件從美工上講有很大進步,從技術上講進步不大。
⑨En8848 迷你背單詞
經過自己的試用,發現就是一個浮動的工具條,不斷出現單詞、音標和解釋,應該說和《我愛背單詞》的時刻不覺背單詞的功能一致。作為一個背單詞的軟件,這一款優點是完全免費,但是這也是唯一的優點了,這款軟件只有進一步完善功能才能真正算的上背單詞的軟件了。這款軟件由于自身原因沒有進行測評,因為這完全和自己背書本是一樣了。
⑩敏特英語教室
敏特軟件的制作應該將是比較專業的,應該是一個完整的英語學習過程,界面設計友好,知識的教授比較專業。唯一的不足有點面面俱到,要學習要求學習者必須要高度集中注意力。以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果。一個小時測試結果:總學習:175詞,已知: 43詞,生詞: 132詞 測驗結果:記住詞41/小時 正確率:31.6% 學生反饋:和在上英語課差不多,就是時間長了有點累,練習有點少。
我的評價:一款不錯的軟件,我的建議,在學習者學習前應該先安排一個簡單的測試,再來呈現個性化的學習方案。
【軟件類評價】在現在這個網絡時代,單機使用的軟件對學習英語的幫助是很大的,但是現在的背單詞軟件為了追求界面精美和單詞的覆蓋面容量愈來愈大,動輒6百多兆的容量,給學校等機構大面積使用帶來不少麻煩。而且軟件類必須在固定機位使用也不是很方便。所以在線背單詞類網站與軟件類背單詞相比具有個人數據保存方便,不必拘泥于固定機位等優勢。但有一個前提就是網站的架構要至少達到《新東方背單詞》和《輕輕松松背單詞》這兩款軟件的境界。
在線網站類:
①大耳朵背單詞
大耳朵背單詞是在線網站類背單詞中比較知名的一個,我也經常在大耳朵上背誦單詞和測試。但是我發現大耳朵網站有一個重大的缺陷就是單詞的發音不是真人發聲而是機器模擬,這對學習者的學習是有一定影響的。
以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果: 一個小時測試結果:總學習:238詞,已知: 121詞,生詞: 117詞 測驗結果:記住35詞/小時
正確率:33% 學生反饋:單詞發音不是清晰,而且例句的選擇有點生僻根本看不懂。還是以excuse為例,大耳朵的例句是“an absence without adequate excuse could result in the suspension of a financial stipend.無正當理由的缺課者可能要受到停發津貼的處罰。
我的評價: 感覺效率低,沒有循環記憶安排。而且在網站中出現了許多低級的錯誤,比如下圖
有兩個單詞中的字母都寫成大寫了,雖然這是一個小問題,但無疑說明了這個網站存在的一些問題
② 天天背單詞
http://scb.iciba.com/day
金山詞霸的附屬網站,專業和底蘊來講肯定是沒得說,但是金山詞霸僅僅是將背單詞作為一個次要的附加服務,所以制作還不是特別精細。天天背單詞,就和詞典差不多,只是變成了網絡版而已。
我自己試用了一下,有拼寫練習、詞義回想、拼寫背誦和單詞回想四種模式,感覺一般。以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果: 一個小時測試結果:總學習:138詞,已知: 37詞,生詞: 101詞 測驗結果:記住25詞/小時 正確率:24.7% 學生反饋:沒有單詞發音,和自己背課本差不多。我的評價: 效率低,比較枯燥
③在線背單詞 www.tmdps.cn 不知道網站制作者是不是也是Kobe的粉絲,估計網站名稱的含義是24 小時學英語吧,這個網站設計的非常簡潔,背單詞是以表格形式出現,沒有音標,沒有例句,也沒有循環記憶。經過試用覺得這個網站就是輔助記憶的,設計上還需要大力改進。以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果: 一個小時測試結果:總學習:118詞,已知: 23詞,生詞: 95詞 測驗結果:記住30詞/小時 正確率:31.6% 學生反饋:沒有單詞發音,沒有例句,更沒有記憶游戲,老師不監督根本不想背。我的評價: 的確是相當枯燥?。、堋?A背單詞》
www.tmdps.cn 《5A背單詞》是我在百度中偶然發現的,卻給了我最大的驚喜。它的網站的架構是依據“艾賓浩斯實時記憶規則“為基礎,能實時分析人腦記憶的動態過程,實時改變學習記憶順序,達到最優化的學習效果。
學習者的記憶要經過“記憶---遺忘---記憶---遺忘---記憶”的多次重復,才能對單詞的記憶達到牢記的效果。
5A背單詞有許多難得的優點,首先是每一個單詞都有標準的真人發音,聲音標準而悅耳,而且采取了人性化的設計,只要鼠標指向單詞就會發音,無需再做點擊。當然是用過軟件類背誦單詞的人,覺得這個功能挺平常的,但是作為一個在線網站類來說這個功能的確是值得推崇,聽力的培養是學英語最基礎的一環,而標準的發音對學習者的幫助是毋庸置疑的。第二是對單詞例句的選擇真是精益求精,我發現”is“的例子很有說服力,其他的背單詞的軟件或者網站,對is都沒有例句,而5A背單詞的一個例子是“Whatever is,is right?”一切存在都是合理的。這個細節也說明了5A背單詞 的細膩。
以下是三名成績接近的學生進行了新概念第一單元的學習和測驗的結果: 一個小時測試結果:總學習:184詞,已知: 53詞,生詞: 131詞 測驗結果:記住60詞/小時 正確率:70% 學生反饋:5A背單詞的發音比較好,而且所選取的例句多是一些名言和典型的句子對掌握單詞的內涵和使用幫助較大。在背單詞的過程中,如果出現錯誤,在其后的四五分鐘內,錯誤的單詞會不斷的重復出現,雖然最后都回答的有點煩了,但是真的掌握這個單詞了,效果真的很好。還學到一些課后就可用的一些句子,比如我學習me這個單詞時,背過了這樣一句話“To live with me " 留在我的記憶中,課后就可以向同學炫耀了
我的評價:偶然的發現,最大的收獲,5A背單詞的確有其比較獨特的地方,令我感受最深的是網站制作的樸實和專業,以及獨特的對學習者的背單詞順序和頻率實時變化上。
【在線類評價】
在現在這個網絡時代,使用在線軟件是一個大的趨勢,云技術的應用就是為了實現對用戶實現個性化的服務。在線背單詞類的網站,我經過試用和檢測覺得有兩個網站質的推薦:大耳朵背單詞和5A背單詞。如果以單詞記憶為主的話,我更推薦5A背單詞。
希望我的親身實踐和比較得出的結論,能幫助到你。我覺得現在5A背單詞的知名度不是很高,但是它以學習者為本的特質,會讓它很快成為背單詞在線網站中的佼佼者。你能想象5A背單詞的效果比動輒700多兆容量占用大量內存的背單詞軟件還好嗎?自己去5A背單詞去感受下吧!
第二篇:財務軟件哪個好
財務軟件哪個好:各類財務軟件對比分析
財務軟件是企業信息化的第一選擇,目前中國市場上財務軟件廠商、品牌眾多,比如用友軟件、金蝶軟件、浪潮軟件、速達軟件、管家婆等,那么哪個財務軟件好,企業該如何選擇?中國云應用平臺為您對比一下各個品牌的優劣,供您參考。
1、用友財務軟件 產品已經涵蓋了小型企業、成長型企業、大中型企業和集團,是國內市場占有率最大的財務軟件廠商。主要產品包括:用友通 用友T系列 用友U8 用友U9等。小型企業財務軟件價格在4000元-3萬元 中型、大型企業 一般在10萬元以上 上市集團型企業成交金額在1千萬元左右。用友軟件已形成NC、U8、“通”三條產品和業務線,分別面向大、中、小型企業提供軟件和服務,用友軟件的產品已全面覆蓋企業從創業、成長到成熟的完整生命周期,能夠為各類企業提供適用的信息化解決方案。
2、速達財務軟件、管家婆、新中大、千里馬等一些行業軟件定位于中小企業,其中速達的市場占有率相當高。相比用友、金蝶等一線品牌,速達、管家婆、新中大等產品注重用戶使用上的便捷性,目前在產品穩定性等一些細節方面已經有長足進步,產品更新比較快。用友、金蝶有的版本很快時間內就有了更新。速達、管家婆、新中大等價格便宜許多,同等功能的產品,價格不到用友、金蝶的一半,對于資金不太充裕的中小企業,成長型企業來說,是個不錯的選擇。
3、金蝶財務軟件 適用于各類企業 價格和用友差不多稍微比用友低一點 就好像寶馬和奔馳一樣 也有一大批國內行業龍頭企業選擇金蝶產品 市場份額:國內不到一半企業選擇金蝶 大公司服務都不錯就看各地的公司水平了,兩家公司總部的實力那是都沒得說??谔?讓管理更簡單 香港上市企業 南方用戶多,南方市場占有率多一些 總部在琛圳
4、浪潮財務軟件 借助國內服務器浪潮的名聲,財務軟件排在第三名,浪潮公司抓住了一些重點企業,特別是山東的公司,像晨鳴紙業、石化企業等。但不適用小型企業,因為他的全國網絡至今沒有完全打開,很多地級市縣級市沒有代理商。相比用友、金蝶各地都有了幾家代理同時在做,浪潮軟件總的來說可以不錯。
第三篇:Linux編程培訓哪個好
中國IT職業教育領先品牌
精品課程 全程面授
Linux編程培訓哪個好
想知道Linux編程培訓哪個好?先來了解一下什么是Linux編程吧!
Linux編程,比需要了解線程的問題。線程間通信之信號量
線程的信號量主要就是實現對公共資源的一種控制管理。當公共資源增加時,信號量的值增加;當公共資源減少時,信號量的值減少;只有信號量的值大于0時,才能訪問信號量所代表的公共資源。其實功能和之前的ucos的信號量功能類似。線程信號量初始化sem_init
intsem_init(sem_t *sem, intpshared, unsigned int value);功能介紹:
該函數主要的功能是創建一個信號量,設置該信號量的值,并且設置信號量的使用范圍。信號量創建成功后,可以對其進行加減操作。參數說明:
千鋒教育www.tmdps.cn
中國IT職業教育領先品牌
精品課程 全程面授
第一個參數sem是一個指向信號量結構的指針,當信號量初始化成功后,可以的這個信號量指針進行加減操作;第二個參數表示信號量的共享屬性,當其值不為0時,信號量可以在進程間共享,如果等于0,則只能在同一個進程中的多個線程間共享;第三個參數用于設置信號量初始化時候的值。2 線程信號量增加函數sem_post
intsem_post(sem_t *sem);功能介紹:
該函數用于增加信號量的值,每次增加值為1。當有線程在等待該信號量,則等待信號量返回,不增加信號量的值。參數說明:
sem參數是初始化時候創建的信號量結構體,用于記錄信號量值得參數。3 線程信號量減少函數sem_wait
intsem_wait(sem_t *sem);功能介紹:
該函數用于減少信號量的值,每次減少值為1。當信號量的值為0,則線程會阻塞一直等待信號量的值大于0為止,當值為0時,不在減少。參數說明:
sem參數是初始化時候創建的信號量結構體。4 線程信號量的銷毀函數sem_destroy
intsem_destroy(sem_t *sem);功能介紹:
函數用于釋放創建的信號量。
千鋒教育www.tmdps.cn
中國IT職業教育領先品牌
精品課程 全程面授
參數說明:
sem參數是初始化時候創建的信號量結構體。
使用線程的信號量進行通信,可以有效的對線程資源進行合理的分配,同時可以使線程以一個合理的方式進行調度。下面的代碼是一個小小的實例,用很常規的方法來使用信號量,當線程獲得獲得信號量之后,在處理完相應的操作之后會主動的釋放掉信號量。其實可以根據信號量的wait和post自己設計使用信號量。不過需要注意的是在wait和post函數分開使用時,可能會因為線程優先級等問題,post和wait被調用的次數不是對等的,這時候這時候可能出現的問題是不可控的,在這種方式設計程序時,需要把大部分的情況考慮進去,當然可能出現的情況的種數也是從0到1質變,從1到n量變得過程。
#include sem_tsem;7 intsemValue;8 void *pthread_wait(void *argv)10 { 11 while(1) 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 { 13 sem_wait(&sem);14 sem_getvalue(&sem, &semValue);15 printf(“This is in phtread WAIT function!sem = %dn”, semValue);16 sem_post(&sem);17 sleep(1);18 } 19 pthread_exit(“exit wait pthread!n”);20 } 21 void *pthread_post(void *argv)23 { 24 while(1)25 { 26 sem_wait(&sem);27 sem_getvalue(&sem, &semValue);28 printf(“This is in phtread POST function!sem = %dn”, semValue);29 sem_post(&sem);30 sleep(1);31 } 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 pthread_exit(“exit post pthread!”);33 } 34 intmain(void)36 { 37 pthread_tpt[2];38 void *ret;39 sem_init(&sem,0,2);41 pthread_create(&pt[0], NULL, &pthread_wait, NULL);42 pthread_create(&pt[1], NULL, &pthread_post, NULL);43 pthread_join(pt[0], &ret);44 printf(“return value %s”, ret);45 pthread_join(pt[1], &ret);46 printf(“return value %s”, ret);47 return 0;49 } 上面代碼的運行結果如下,因為是線程采用了無限循環的方式,所以pthread_exit和pthread_join不會執行到。 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 如果將上面代碼中的第26行注釋掉,運行結果如下,可以看到信號量的值一直在增加,就如上面提到的因為sem_wait函數和sem_post函數不能同時使用時,會出現一些不可控的運行結果。也可以利用這種情況,設計程序。 以上就是千鋒Linux學院的學習筆記。另附心得體會一篇: 從零基礎開始學Linux或者是轉行學習Linux,參加培訓會保證你在單位時間內學到更多,畢竟隨著Linux行業的快速發展,未來必將會面臨更多的競爭,所以只有不遺余力的把自己打造成一把利劍,從專業度到職業素質,只有比別人更突出和優秀,才能夠在這個相互選擇的世界當中擁有更多的選擇權利。現在想要學習Linux技術,只有通過參加培訓才可以保證快速掌握所學知識和技能,所 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 以培訓是比較靠譜的。 Linux編程培訓哪個好?千鋒教育的Linux課程專注于當前熱門的Linux相關技術,就Linux而言,內容全面而細致的。Linux教學團隊由眾多名師打造,擁有多年教學經驗和高超的Linux授課技巧和實戰視野,讓你理論和實戰兼得。 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 學習Linux編程哪個好 想知道Linux編程培訓哪家好?先來了解一下什么是Linux編程吧!Linux下的網絡編程指的是socket套接字編程,入門比較簡單。在學校里學過一些皮毛,平時就是自學玩,沒有見識過真正的socket編程大程序,比較遺憾??偢杏X每次看的時候都有收獲,但是每次看完了之后,過段時間不看,重新拾起這些知識的時候又要從頭開始,所以,在這里做個筆記也算是做個模板,以后可以直接從某一個階段開始接著玩…… IO復用之select函數 select函數用于IO復用,它用于監視多個文件描述符集合,看規定時間內有沒有事件產生。 int select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,struct timeval *timeout);功能介紹: 該函數主要的功能是對需要操作的文件描述符集合進行查詢,目標文件描述符中有可以讀,寫或者異常錯誤操作的情況時,會返回一個大于0的整數值,表示可以對該文件描述符進行操作。select函數返回0,表示超時;返回-1,表示發生錯誤;返回大于0的整數值,表示有符合要求的文件描述事件產生。當不需要監視某種文件描述符時,設置參數為NULL。參數說明: nfds:是一個整型變量,其值是加入到后面三個文件描述符集合中的最大文件描 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 述符的值加1。 readfds:可讀文件描述符集合,通過FD_SET向該文件描述符集合中加入需要監視的目標文件描述符,當有符合要求的文件描述符時,select會返回一個大于0的值,同時會把原來集合中的不可讀的文件描述符清掉,如果想在次監視可讀文件描述,需要重新FD_SET。 writefds:可寫文件描述符集合,同樣通過FD_SET函數向結合中加入需要被監視的目標文件描述符,select返回時,同樣會把不可寫文件描述符清掉,如果需要重新監視文件描述符,需要重新FD_SET設置。 exceptfds:該描述符集合是用于監視文件描述符集合中的任何文件是否發生錯誤。 timeout:用于設置超時的最長等待時間,如果在該規定時間內沒有返回一個大于0的值,則返回0,表示超時。如果超時間設置為NULL,表示阻塞等待,直到符合條件的文件描述符在集合中出現,當timeout的值為0時,select會立即返回。 timeout的數據結構如下: struct timeval { time_t tv_sec; /*秒*/ long tv_usec; /*微秒*/ };有4個宏可以操作文件描述符集合: FD_ZERO: 用于清空文件描述符集合,FD_ZERO(&fds)。 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 FD_SET:向某個文件描述符結合中加入文件描述符, FD_SET(fd, &fds)。FD_CLR:從某個文件描述符結合中取出某個文件描述符, FD_CLR(fd, &fds)。FD_ISSET:測試某個文件描述符是否在某個文件描述符集合中, FD_ISSET(fd, &fds)。 下面是本實用socket編程,并且利用select IO實現的一個server和client實時通信的例子,為了顯示更直觀,加了一些打印以及接收數據上的操作,程序還有bug,希望閱讀的人不要介意,或者自行修改。代碼如下,可以作為學習socket和select的一個實例。server.c文件源碼如下: #include int main(void)13 { 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 int sockfd, clientfd; struct sockaddr_in sockServer, sockClient;16 struct timeval tv;17 fd_set readfds, writefds;18 int readlen, writelen;19 char buffer[SIZE];20 sockfd = socket(AF_INET, SOCK_STREAM, 0);22 if(sockfd < 0)23 { 24 perror(“create socket failed!n”);25 return-1;26 } 27 bzero(&sockServer, 0);29 sockServer.sin_family = AF_INET;30 sockServer.sin_port = htons(SPORT);31 sockServer.sin_addr.s_addr = htonl(INADDR_ANY);32 if(bind(sockfd,(struct sockaddr *)&sockServer, sizeof(struct sockaddr_in))< 0)34 { 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 perror(“bind socket failed!n”);36 return-1;37 } 38 if(listen(sockfd, BACKLOG)< 0)40 { 41 perror(“listen failed!n”);42 } 43 printf(“Server is listening......n”);45 while(1)47 { 48 int len = sizeof(struct sockaddr_in);49 int ret;50 time_t timet;51 clientfd = accept(sockfd,(struct sockaddr *)&sockClient, &len);53 if(clientfd < 0)54 { 55 perror(“accept failed!n”); 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 return-1;57 } 58 for(;;)60 { 61 FD_ZERO(&readfds);FD_SET(1, &readfds);FD_SET(clientfd, &readfds);tv.tv_usec = 0;tv.tv_sec = 60; ret = select(clientfd+1, &readfds, NULL, NULL, &tv);switch(ret){ case 0: printf(“select timeout!n”); break; case-1: perror(“select return failed!n”); goto closesocket; default: if(FD_ISSET(clientfd, &readfds)> 0) 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 { 79 memset(buffer, 0, SIZE);80 readlen = read(clientfd, buffer, SIZE);81 if(readlen < 0)82 { 83 ctime(&timet));88 perror(“read data failed!n”); goto closesocket; } time(&timet); printf(“Opposite: %d %s”, clientfd,strcat(buffer, “n”); writelen = write(0, buffer, readlen+1); if(writelen < 0) { perror(“write data failed!n”); goto closesocket; } } if(FD_ISSET(1, &readfds)> 0){ time(&timet); 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 printf(“Owner: %d %sn”, sockfd, ctime(&timet));100 memset(buffer, 0, SIZE);101 readlen = read(1, buffer, SIZE);102 if(readlen < 0)103 112 113 } 114 } 115 } 116 closesocket: 117 close(clientfd);118 } 119 close(sockfd); { perror(“read data failed!n”); goto closesocket;} writelen = write(clientfd, buffer, readlen);if(writelen < 0){ perror(“write data failed!n”); goto closesocket;} 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 120 121 return 0;122 } client.c文件源碼如下: #include int main(void)12 { 13 int sockfd, clientfd; struct sockaddr_in sockServer;15 struct timeval tv;16 fd_set readfds;17 int readlen, writelen; 精品課程 全程面授 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 char buffer[SIZE];19 time_t timet;20 sockfd = socket(AF_INET, SOCK_STREAM, 0);22 if(sockfd < 0)23 { 24 perror(“create socket failed!n”);25 return-1;26 } 27 bzero(&sockServer, 0);29 sockServer.sin_family = AF_INET;30 sockServer.sin_port = htons(SPORT);31 sockServer.sin_addr.s_addr = htonl(INADDR_ANY);32 if(connect(sockfd,(struct sockaddr *)&sockServer, sizeof(struct sockaddr_in))< 0)34 { 35 perror(“connect failed!n”);36 close(sockfd);37 } 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 while(1)40 { 41 int ret;42 FD_ZERO(&readfds);44 FD_SET(1, &readfds);45 FD_SET(sockfd, &readfds);46 tv.tv_usec = 0;47 tv.tv_sec = 60;48 ret = select(sockfd+1, &readfds, NULL, NULL, &tv);50 switch(ret)51 { 52 case 0: 53 printf(“select timeout!n”);54 break;55 case-1: 56 perror(“select return failed!n”);57 goto closesocket;58 default: 59 if(FD_ISSET(sockfd, &readfds)> 0)60 { 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 memset(buffer, 0, SIZE);62 readlen = read(sockfd, buffer, SIZE);63 if(readlen < 0)64 { 65 perror(“read data failed!n”);66 ctime(&timet));70 goto closesocket; } time(&timet); printf(“Opposite: %s %s”, “Server”,strcat(buffer, “n”); writelen = write(0, buffer, readlen + 1); if(writelen < 0) { perror(“write data failed!n”); goto closesocket; } } if(FD_ISSET(1, &readfds)> 0){ time(&timet); printf(“Owner: %d %sn”, sockfd,千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 ctime(&timet));82 memset(buffer, 0, SIZE);83 readlen = read(1, buffer, SIZE);84 if(readlen < 0)85 { 86 perror(“read data failed!n”);87 goto closesocket;88 } 89 writelen = write(sockfd, buffer, readlen);90 if(writelen < 0)91 { 92 perror(“write data failed!n”);93 goto closesocket;94 } 95 } 96 } 97 closesocket: 99 close(clientfd);100 } 101 close(sockfd);102 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 return 0;104 } 運行結果如下所示: 以上就是千鋒Linux學院的學習筆記。另附心得體會一篇: 從零基礎開始學Linux或者是轉行學習Linux,參加培訓會保證你在單位時間內學到更多,畢竟隨著Linux行業的快速發展,未來必將會面臨更多的競爭,所以只有不遺余力的把自己打造成一把利劍,從專業度到職業素質,只有比別人更突出和優秀,才能夠在這個相互選擇的世界當中擁有更多的選擇權利?,F在想要學習Linux技術,只有通過參加培訓才可以保證快速掌握所學知識和技能,所以培訓是比較靠譜的。 學習Linux編程哪個好?千鋒教育的Linux課程專注于當前熱門的Linux相關技術,就Linux而言,內容全面而細致的。Linux教學團隊由眾多名師打造,擁有多年教學經驗和高超的Linux授課技巧和實戰視野,讓你理論和實戰兼得。 千鋒教育www.tmdps.cn 中國IT職業教育領先品牌 精品課程 全程面授 千鋒教育www.tmdps.cn 條碼倉庫管理軟件作為企業提高效率的重要工具,大家對條碼倉庫管理軟件選擇一定有自己的看法,而選擇如何好用的倉庫管理軟件系統,企業應該怎樣評估選擇條碼倉庫管理軟件的性價比呢?到底條碼倉庫管理軟件哪個好?下面將簡單的談一談自己的看法 易操作性。中小企業本身資金缺乏,技術人才相對較少,人員信息化素質比較低,那么中小企業進倉庫管理軟件易操作性就成為用戶選擇軟件的一個重要條件。鑫寶軟件 在產品設計理念上正強調了這一點,力求操作簡單,使不精通計算機的人員能簡單上手。 功能實用性。中小企業倉庫管理軟件并不需要追求功能如何強大,只要做到功能不堆砌,實用就行。以鑫寶軟件 來看,功能涵蓋集條碼管理、資料管理、往來單位管理、倉庫出入庫管理、調撥管理、盤點管理、報損管理、日常領用管理、倉庫安全預警、統計分析管理、系統控制管理等功能于一體。很好的做到功能不堆砌、實用的準則。 價格合適。中小企業之所以選擇中小型企業倉庫管理軟件,主要一個原因是自身資金少。中小企業規模小,信息化建設預算少,而且信息化建設并不是馬上見效的,所以軟件產品在價格上要具于合理性,性價比高,才能讓更多的企業與公司享受到企業信息化帶來的利益??词酆蟊WC。雖然這個不好判斷,但也有好法,看這版本有沒有終身服務,這樣,才能看出來,這個企業是不是真心為大家服務、是不是真的比較好用。終身免費使用、終身免費升級、終身免費服務,能過得了這三關的,質量也確實是不錯的,當然條碼軟件第一品牌值得信賴?,F在也有很多公司盲目的希望能用軟件來管理倉庫,盲目投入,認為這樣可以有效提高工作質量,帶來收益。其實不盡然,很多企業的倉庫不是很大,甚至就算倉庫規模不小,但是公司常年累月有自己的原始簡單的操作方法,并且效率和準確率完全達到公司的要求。這個時候盲目跟風,會打亂倉庫現有的模式,相關員工需要重新學習、采用一個全新的模式。反而把原本簡單事情弄的復雜化。到最后導致投入浪費。 我覺得倉庫的根本還是人,再就是完善的倉庫制度,最后才是條形碼倉庫管理軟件。倉庫應該是先要有負責任的人,然后這些人認真執行這套完善的倉庫制度,在這個大前提下通過一個合適的倉管軟件來輔助人來工作。所以選擇倉庫出入庫管理軟件應該是結合自身的情況,選擇一款適合自己用的軟件。第四篇:學習Linux編程哪個好
第五篇:條碼倉庫管理軟件哪個好?