<style id="7i3y3"></style>

      <sub id="7i3y3"><i id="7i3y3"></i></sub>

        午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
        首頁 新聞 工控搜 論壇 廠商論壇 產(chǎn)品 方案 廠商 人才 文摘 下載 展覽
        中華工控網(wǎng)首頁
          P L C | 變頻器與傳動 | 傳感器 | 現(xiàn)場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
          D C S | 工業(yè)以太網(wǎng) | 現(xiàn)場總線 | 顯示調(diào)節(jié)儀表 | 數(shù)據(jù)采集 | 數(shù)傳測控 | 工業(yè)安全
          電 源 | 嵌入式系統(tǒng) | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
        收藏本文     查看收藏
        多線程編程一直是讓鄙人不愿提起的傷心往事。

        需要太多的耐心,和足夠的編程基本功及對操作系統(tǒng)的了解。在運動控制編程中,有許多骨灰級編程高手,常對此故作深沉,一般會這樣回答:
        呵呵,多線程編程,好哇,不錯…”
        要是你再問他自己用不用多線程編程方法去作運動控制軟件,他會這樣說:
        是啊,不過,好像用不著吧!

        若有幸得到他的耐心指導(dǎo),則省下許多為多線程付出的痛苦。我何嘗不曾經(jīng)歷

        當然,多線程又不是絕癥,當然有解決方法。故在您真的想動手之前聽聽下面的經(jīng)驗之談,或許有參考作用。

        每一個進程都含有一個主線程,若再開辟一個線程作某些事情,則至少為兩個或兩個以上的線程在作業(yè)。
        下面引用名家言-----Gevorg Ter-Saakov(呵呵,是老外,我不認識的)

        在多線程環(huán)境中存在一個潛在問題:就是創(chuàng)建多線程應(yīng)用程序時,有一個意外的優(yōu)化問題,會導(dǎo)致你的程序有不可預(yù)期的行為。
        如果你定義了一些可以被兩個或兩個以上線程訪問的變量,則必須使用關(guān)鍵字volatile。否則,如果一個線程更改了變量,第二個線程不能注意到該變化,因為變量被優(yōu)化,編譯器可能使用一個CPU寄存器。
        一般情況下,在調(diào)式模式下不會發(fā)生問題,在發(fā)行模式下,就可能導(dǎo)致行為不可預(yù)期。

        根據(jù)以上的思想,回過頭來看看控制卡的編程。
        一般控制卡的操作都含有一套動態(tài)庫,動態(tài)庫內(nèi)部定義的變量對于多線程的訪問就存在上述問題,而絕大部分動態(tài)庫在發(fā)布版中,都不會加上volatile關(guān)鍵字。以下面的形式為例:

        void GoToPoistion( long nPulse )//
        指定移動絕對位置
        {
        d3000_start_t_move( XCH, nPulse-d3000_get_command_pos(0), speed );
        }

        d3000_start_t_move
        DMC3000控制卡的相對移動函數(shù)
        d3000_get_command_pos
        DMC3000控制卡讀取指令位置函數(shù)。

        當脈沖距離發(fā)出時,客戶往往需要動態(tài)的以圖形方式顯示當前位置,或者直接用文字顯示出來,若此實現(xiàn)在另一個多線程內(nèi)是這樣的:
        char string[0x100];
        sprintf( string, “Xposition=%ld”, d3000_get_command_pos(0)) ;

        GetDlgItem( IDC_STATIC_MSG )->SetWindowText( string );//
        顯示到屏幕上

        由此可見,d3000_get_command_pos在兩個線程當中都被調(diào)用,它內(nèi)部則會訪問同一變量。故,在一定速度頻率下,或某一特定環(huán)境下,讀取出來的脈沖計數(shù)不可預(yù)期,顯示出來的圖形或坐標位置也將出錯。

        故,本人在《DMC3000控制卡的多任務(wù)編程》,對位置的讀取采用較為謹慎的態(tài)度。

        多線程編程的同步問題也較為復(fù)雜,一時難以言盡,大凡以高手的見地,最好以簡單的方式作穩(wěn)定的事情,有興趣的朋友不妨閱讀一下DoEvents的實現(xiàn)還來得有效率一些。
         

        狀 態(tài): 離線

        公司簡介
        產(chǎn)品目錄

        公司名稱: 深圳市雷賽智能控制股份有限公司
        聯(lián) 系 人: 梁邦敏
        電  話: 755-26401178
        傳  真:
        地  址: 深圳市南山區(qū)登良路天安南油工業(yè)區(qū)2棟3樓
        郵  編: 518000
        主  頁:
         
        該廠商相關(guān)技術(shù)文摘:
        CNC解釋庫調(diào)用接口詳述
        DMC1000控制卡不能響應(yīng)系統(tǒng)消息
        DMC2000脈沖速度初始化故障
        DMC2000運動控制卡常見軟件問題的解決方案
        DMC2200驅(qū)動程序特殊安裝方法
        DMC3000控制卡,與CNC之G代碼的邦定關(guān)系
        DMC3000控制卡的多任務(wù)編程
        多類型運動控制卡編程方法探討
        發(fā)現(xiàn)步進電機定位不準怎么辦
        過程控制編程之簡要探討
        控制卡應(yīng)用編程技巧幾招(2)
        更多文摘...
        立即發(fā)送詢問信息在線聯(lián)系該技術(shù)文摘廠商:
        用戶名: 密碼: 免費注冊為中華工控網(wǎng)會員
        請留下您的有效聯(lián)系方式,以方便我們及時與您聯(lián)絡(luò)

        關(guān)于我們 | 聯(lián)系我們 | 廣告服務(wù) | 本站動態(tài) | 友情鏈接 | 法律聲明 | 不良信息舉報
        工控網(wǎng)客服熱線:0755-86369299
        版權(quán)所有 中華工控網(wǎng) Copyright©2022 Gkong.com, All Rights Reserved

        主站蜘蛛池模板: 无码人妻丝袜在线视频| 国产成人国产在线观看| 伊人久久大香线蕉网av| 岛国最新亚洲伦理成人| 激情自拍校园春色中文| 一本大道东京热无码| 欧美人与禽2o2o性论交| 亚洲精品无amm毛片| 亚洲一区二区三区日本久久| 全免费A级毛片免费看无码| 亚洲综合精品第一页| 欧美午夜成人片在线观看| 日韩欧美国产另类| 国内精品自线在拍| 国产午夜一区二区在线观看| 国产suv精品一区二区五| 又爽又黄又无遮挡的视频| 久久精品国产一区二区涩涩| 国产成人亚洲综合91精品| 樱花草视频www日本韩国| 麻花传mdr免费版| 亚洲中文字幕一区二区| 少妇脱了内裤在客厅被| 中文无码乱人伦中文视频在线| 久久精品国产亚洲av麻| 国模一区二区三区私拍视频 | 国产精品猎奇系列在线观看| 国产三级黄色片在线观看| 成人免费精品网站在线观看影片| 国产高清小视频一区二区| 国产午夜福利小视频合集 | 香港三日本三级少妇三级视频| 国产精品中文字幕av| 精品人妻一区二区久久| 色香欲天天影视综合网| 久久综合精品国产丝袜长腿| 中文有无人妻vs无码人妻激烈| 激动网视频| 免费观看的av在线播放| 97精品伊人久久大香线蕉APP | 99久久婷婷国产综合精品青草漫画|