亚洲日韩av在线观看_日韩一级欧美一级_亚洲自偷自拍另类11p_久久午夜色播影院_中国黄色三级毛片_伊人久久一区二区三区小说_国产精品va无码二区_国产三区在线视频_69热视频_日本亚洲天堂_99精品少妇_国产区 在线观看_天堂一区二区三区_大片免费在线观看视频_免费看黄色一级片_黄色毛片特级_国产 麻豆 日韩 欧美 久久_国产一级淫片s片sss毛片s级_欧美爱爱视频_精品无码一区二区三区水蜜桃

東坡下載:內容最豐富最安全的下載站!

首頁編程開發Java → 多線程開發的捷徑:構建Java并發模型框架

多線程開發的捷徑:構建Java并發模型框架

相關文章發表評論 來源:本站時間:2010/10/14 12:04:04字體大小:A-A+

更多

作者:東坡下載點擊:528次評論:0次標簽:

Java多線程特性為構建高性能的應用提供了極大的方便,但是也帶來了不少的麻煩。線程間同步、數據一致性等煩瑣的問題需要細心的考慮,一不小心就會出現一些微妙的,難以調試的錯誤。

  另外,應用邏輯和線程邏輯糾纏在一起,會導致程序的邏輯結構混亂,難以復用和維護。本文試圖給出一個解決這個問題的方案,通過構建一個并發模型框架(framework),使得開發多線程的應用變得容易。

  基礎知識

  Java語言提供了對于線程很好的支持,實現方法小巧、優雅。對于方法重入的保護,信號量(semaphore)和臨界區(critical section)機制的實現都非常簡潔。可以很容易的實現多線程間的同步操作從而保護關鍵數據的一致性。這些特點使得Java成為面向對象語言中對于多線程特性支持方面的佼佼者(C++正在試圖把boost庫中的對于線程的支持部分納入語言標準)。

  Java中內置了對于對象并發訪問的支持,每一個對象都有一個監視器(monitor),同時只允許一個線程持有監視器從而進行對對象的訪問,那些沒有獲得監視器的線程必須等待直到持有監視器的線程釋放監視器。對象通過synchronized關鍵字來聲明線程必須獲得監視器才能進行對自己的訪問。

  synchronized聲明僅僅對于一些較為簡單的線程間同步問題比較有效,對于哪些復雜的同步問題,比如帶有條件的同步問題,Java提供了另外的解決方法,wait/notify/notifyAll。

  獲得對象監視器的線程可以通過調用該對象的wait方法主動釋放監視器,等待在該對象的線程等待隊列上,此時其他線程可以得到監視器從而訪問該對象,之后可以通過調用notify/notifyAll方法來喚醒先前因調用wait方法而等待的線程。

  一般情況下,對于wait/notify/notifyAll方法的調用都是根據一定的條件來進行的,比如:經典的生產者/消費者問題中對于隊列空、滿的判斷。熟悉POSIX的讀者會發現,使用wait/notify/notifyAll可以很容易的實現POSIX中的一個線程間的高級同步技術:條件變量。

  簡單例子

  本文將圍繞一個簡單的例子展開論述,這樣可以更容易突出我們解決問題的思路、方法。本文想向讀者展現的正是這些思路、方法。這些思路、方法更加適用于解決大規模、復雜應用中的并發問題。考慮一個簡單的例子,我們有一個服務提供者,它通過一個接口對外提供服務,服務內容非常簡單,就是在標準輸出上打印Hello World。類結構圖如下:

類結構圖

  代碼如下:

  1.interface Service

  2.{

  3.    public void sayHello();

  4.}

  5.class ServiceImp implements Service

  6.{

  7.    public void sayHello() {

  8.        System.out.println("Hello World!");

  9.    }

  10.}

  11.class Client

  12.{

  13.    public Client(Service s) {

  14.        _service = s;

  15.}

  16.    public void requestService() {

  17.        _service.sayHello();

  18.    }

  19.    private Service _service;

  20.}

  如果現在有新的需求,要求該服務必須支持Client的并發訪問。一種簡單的方法就是在ServicImp類中的每個方法前面加上synchronized聲明,來保證自己內部數據的一致性(當然對于本例來說,目前是沒有必要的,因為ServiceImp沒有需要保護的數據,但是隨著需求的變化,以后可能會有的)。但是這樣做至少會存在以下幾個問題:

  1.現在要維護ServiceImp的兩個版本:多線程版本和單線程版本(有些地方,比如其他項目,可能沒有并發的問題),容易帶來同步更新和正確選擇版本的問題,給維護帶來麻煩。

  2.如果多個并發的Client頻繁調用該服務,由于是直接同步調用,會造成Client阻塞,降低服務質量。

  3.很難進行一些靈活的控制,比如:根據Client的優先級進行排隊等等。

  4.這些問題對于大型的多線程應用服務器尤為突出,對于一些簡單的應用(如本文中的例子)可能根本不用考慮。本文正是要討論這些問題的解決方案,文中的簡單的例子只是提供了一個說明問題,展示思路、方法的平臺。

  5.如何才能較好的解決這些問題,有沒有一個可以重用的解決方案呢?讓我們先把這些問題放一放,先來談談和框架有關的一些問題。

  框架概述

  熟悉面向對象的讀者一定知道面向對象的最大的優勢之一就是:軟件復用。通過復用,可以減少很多的工作量,提高軟件開發生產率。復用本身也是分層次的,代碼級的復用和設計架構的復用。

  大家可能非常熟悉C語言中的一些標準庫,它們提供了一些通用的功能讓你的程序使用。但是這些標準庫并不能影響你的程序結構和設計思路,僅僅是提供一些機能,幫助你的程序完成工作。它們使你不必重頭編寫一般性的通用功能(比如printf),它們強調的是程序代碼本身的復用性,而不是設計架構的復用性。

  那么什么是框架呢?所謂框架,它不同于一般的標準庫,是指一組緊密關聯的(類)classes,強調彼此的配合以完成某種可以重復運用的設計概念。這些類之間以特定的方式合作,彼此不可或缺。它們相當程度的影響了你的程序的形貌。框架本身規劃了應用程序的骨干,讓程序遵循一定的流程和動線,展現一定的風貌和功能。這樣就使程序員不必費力于通用性的功能的繁文縟節,集中精力于專業領域。

  有一點必須要強調,放之四海而皆準的框架是不存在的,也是最沒有用處的。框架往往都是針對某個特定應用領域的,是在對這個應用領域進行深刻理解的基礎上,抽象出該應用的概念模型,在這些抽象的概念上搭建的一個模型,是一個有形無體的框架。不同的具體應用根據自身的特點對框架中的抽象概念進行實現,從而賦予框架生命,完成應用的功能。

  基于框架的應用都有兩部分構成:框架部分和特定應用部分。要想達到框架復用的目標,必須要做到框架部分和特定應用部分的隔離。使用面向對象的一個強大功能:多態,可以實現這一點。在框架中完成抽象概念之間的交互、關聯,把具體的實現交給特定的應用來完成。其中一般都會大量使用了Template Method設計模式。Java中的Collection Framework以及微軟的MFC都是框架方面很好的例子。有興趣的讀者可以自行研究。

構建框架

  如何構建一個Java并發模型框架呢?讓我們先回到原來的問題,先來分析一下原因。造成要維護多線程和單線程兩個版本的原因是由于把應用邏輯和并發邏輯混在一起,如果能夠做到把應用邏輯和并發模型進行很好的隔離,那么應用邏輯本身就可以很好的被復用,而且也很容易把并發邏輯添加進來而不會對應用邏輯造成任何影響。造成Client阻塞,性能降低以及無法進行額外的控制的原因是由于所有的服務調用都是同步的,解決方案很簡單,改為異步調用方式,把服務的調用和服務的執行分離。

  首先來介紹一個概念,活動對象(Active Object)。所謂活動對象是相對于被動對象(passive object)而言的,被動對象的方法的調用和執行都是在同一個線程中的,被動對象方法的調用是同步的、阻塞的,一般的對象都屬于被動對象;主動對象的方法的調用和執行是分離的,主動對象有自己獨立的執行線程,主動對象的方法的調用是由其他線程發起的,但是方法是在自己的線程中執行的,主動對象方法的調用是異步的,非阻塞的。

  本框架的核心就是使用主動對象來封裝并發邏輯,然后把Client的請求轉發給實際的服務提供者(應用邏輯),這樣無論是Client還是實際的服務提供者都不用關心并發的存在,不用考慮并發所帶來的數據一致性問題。從而實現應用邏輯和并發邏輯的隔離,服務調用和服務執行的隔離。下面給出關鍵的實現細節。

  本框架有如下幾部分構成:

  1.一個ActiveObject類,從Thread繼承,封裝了并發邏輯的活動對象;

  2.一個ActiveQueue類,主要用來存放調用者請求;

  3.一個MethodRequest接口,主要用來封裝調用者的請求,Command設計模式的一種實現方式。它們的一個簡單的實現如下:

  1. //MethodRequest接口定義

  2.  interface MethodRequest

  3.{

  4.    public void call();

  5.}

  6.//ActiveQueue定義,其實就是一個producer/consumer隊列

  7.    class ActiveQueue

  8.{

  9.      public ActiveQueue() {

  10.        _queue = new Stack();

  11.      }

  12.    public synchronized void enqueue(MethodRequest mr) {

  13.        while(_queue.size() > QUEUE_SIZE) {

  14.            try {

  15.                   wait();

  16.            }catch (InterruptedException e) {

  17.                   e.printStackTrace();

  18.            }

  19.        }

  20.

  21.        _queue.push(mr);

  22.        notifyAll();

  23.        System.out.println("Leave Queue");

  24.    }

  25.    public synchronized MethodRequest dequeue() {

  26.        MethodRequest mr;

  27.

  28.        while(_queue.empty()) {

  29.            try {

  30.                wait();

  31.            }catch (InterruptedException e) {

  32.                e.printStackTrace();

  33.            }

  34.        }

  35.        mr = (MethodRequest)_queue.pop();

  36.        notifyAll();

  37.

  38. return mr;

  39.    }

  40.    private Stack _queue;

  41.    private final static int QUEUE_SIZE = 20;

  42.}

  43.//ActiveObject的定義

  44.class ActiveObject extends Thread

  45.{

  46.    public ActiveObject() {

  47.        _queue = new ActiveQueue();

  48.        start();

  49.    }

  50.    public void enqueue(MethodRequest mr) {

  51.        _queue.enqueue(mr);

  52.    }

  53.    public void run() {

  54.        while(true) {

  55.            MethodRequest mr = _queue.dequeue();

  56.            mr.call();

  57.        }

  58.    }

  59.    private ActiveQueue _queue;

  60.}

  通過上面的代碼可以看出正是這些類相互合作完成了對并發邏輯的封裝。開發者只需要根據需要實現MethodRequest接口,另外再定義一個服務代理類提供給使用者,在服務代理者類中把服務調用者的請求轉化為MethodRequest實現,交給活動對象即可。

  使用該框架,可以較好的做到應用邏輯和并發模型的分離,從而使開發者集中精力于應用領域,然后平滑的和并發模型結合起來,并且可以針對ActiveQueue定制排隊機制,比如基于優先級等。

基于框架的解決方案

  本小節將使用上述的框架重新實現前面的例子,提供對于并發的支持。第一步先完成對于MethodRequest的實現,對于我們的例子來說實現如下:

  1.class SayHello implements MethodRequest

  2.{

  3.    public SayHello(Service s) {

  4.        _service = s;

  5.    }

  6.    public void call() {

  7.        _service.sayHello();

  8.    }

  9.    private Service _service;

  10.}

  該類完成了對于服務提供接口sayHello方法的封裝。接下來定義一個服務代理類,來完成請求的封裝、排隊功能,當然為了做到對Client透明,該類必須實現Service接口。定義如下:

  11.class ServiceProxy implements Service

  12.{

  13.    public ServiceProxy() {

  14.        _service = new ServiceImp();

  15.        _active_object = new ActiveObject();

  16.    }

  17.

  18.    public void sayHello() {

  19.        MethodRequest mr = new SayHello(_service);

  20.        _active_object.enqueue(mr);

  21.    }

  22.    private Service _service;

  23.    private ActiveObject _active_object;

  24.}

  其他的類和接口定義不變,下面對比一下并發邏輯增加前后的服務調用的變化,并發邏輯增加前,對于sayHello服務的調用方法:

  25.Service s = new ServiceImp();

  26.Client c = new Client(s);

  27.c.requestService();

  并發邏輯增加后,對于sayHello服務的調用方法:

  28.Service s = new  ServiceProxy();

  29.Client c = new Client(s);

  30.c.requestService();

  可以看出并發邏輯增加前后對于Client的ServiceImp都無需作任何改變,使用方式也非常一致,ServiceImp也能夠獨立的進行重用。類結構圖如下:

類結構圖

  讀者容易看出,使用框架也增加了一些復雜性,對于一些簡單的應用來說可能根本就沒有必要使用本框架。希望讀者能夠根據自己的實際情況進行判斷。

  結論

  本文圍繞一個簡單的例子論述了如何構架一個Java并發模型框架,其中使用了一些構建框架的常用技術,當然所構建的框架和一些成熟的商用框架相比,顯得非常稚嫩,比如沒有考慮服務調用有返回值的情況,但是其思想方法是一致的,希望讀者能夠深加領會,這樣無論對于構建自己的框架還是理解一些其他的框架都是很有幫助的。讀者可以對本文中的框架進行擴充,直接應用到自己的工作中。

  優點:

  1.增強了應用的并發性,簡化了同步控制的復雜性;

  2.服務的請求和服務的執行分離,使得可以對服務請求排隊,進行靈活的控制;

  3.應用邏輯和并發模型分離,使得程序結構清晰,易于維護、重用;

  4.可以使開發者集中精力于應用領域。

  缺點:

  1.由于框架所需類的存在,在一定程度上增加了程序的復雜性;

  2.如果應用需要過多的活動對象,由于線程切換開銷會造成性能下降;

  3.可能會造成調試困難。

相關評論

閱讀本文后您有什么感想? 已有 人給出評價!

  • 2791 喜歡喜歡
  • 2101 頂
  • 800 難過難過
  • 1219 囧
  • 4049 圍觀圍觀
  • 5602 無聊無聊
熱門評論
最新評論
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字數: 0/500 (您的評論需要經過審核才能顯示)

本類常用軟件

主站蜘蛛池模板: 云南三环中化有限公司| 汉津天津化工有限公司| 上海蓉易贸易有限公司| 动车组餐饮有限公司| 霍尼韦尔摩擦材料有限公司| 恒力混凝土有限公司| 宗艺石材发展有限公司| 深圳众邦电子有限公司| 晋江市酒业有限公司| 阿克苏诺贝尔化学品有限公司| 汉纬尔机械有限公司| 杭州城市建设监理有限公司 | 深圳市鑫隆实业有限公司| 拓普科电子有限公司| 深圳市弘丰有限公司| 中山紫丁香日用品有限公司| 北京润达机械有限公司| 美特达机械 苏州 有限公司| 美思化妆品有限公司| 香港国际绿洲有限公司| 咸阳 服装 有限公司| 青岛成岛实业有限公司| 欧伏电气设备有限公司| 沈阳德恒机械有限公司| 西玛泰电机有限公司| 艺海装饰设计有限公司| 潮州 国际 有限公司| 久保田江苏有限公司| 宁波万华聚氨酯有限公司| 恒天然牧场有限公司| 飞利浦照明电子有限公司| 中材进出口有限公司| 南昌红又红实业有限公司| 汇鼎建筑工程有限公司| 山东青岛机械有限公司| 腾龙光学 佛山 有限公司| 山东澳蒙能源有限公司| 武汉人天包装技术有限公司| 苏州体育设施工程有限公司| 包头市光电有限公司| 永嘉建筑工程有限公司| 广东亿龙电器有限公司| 台州天则模具有限公司| 企派信息技术有限公司| 兰考葡萄酒业有限公司| 上海赫比精密模具有限公司| 沧州电器制造有限公司| 百分百感觉有限公司| 晶创光电(深圳)有限公司| 松下电气机器有限公司| 新闵重型锻造有限公司| 市华信化工有限公司| 和美有限公司怎么样| 广州汉成电子有限公司| 上海众鑫通信技术有限公司| 中海集装箱有限公司招聘| 泉州诗丽雅化妆有限公司| 昆山立讯精密工业有限公司| 万通钢结构有限公司| 元翔国际航空港有限公司| 深圳市华良有限公司| 深圳市搜了信息技术有限公司| 深圳市林科电子有限公司 | 富基电子(深圳)有限公司| 华瑞生物工程有限公司| 青岛吉明美有限公司| 东莞智达电子有限公司| 名雅装饰工程有限公司| 芜湖工业设备有限公司| 北斗星机械有限公司| 安徽博微电气有限公司| 厦门机械工程有限公司| 中美冠科生物技术有限公司| 玛连尼法亚机械有限公司| 广州市天高有限公司| 深圳百鑫电子有限公司| 福建婴儿用品有限公司| 亚马逊 香港 有限公司| 东莞市市政工程有限公司| 金螳螂建筑装饰有限公司| 深圳华科能源有限公司| 河北卫生用品有限公司| 恒安心相印纸制品有限公司| 瑞莱特照明有限公司| 安盛电力工程有限公司| 烟台三和食品有限公司| 上海携程旅游有限公司| 深圳市百佳家具有限公司| 黑龙江省龙建路桥有限公司| 江苏环亚建设工程有限公司| 苏州妥思空调有限公司| 索博智能电子有限公司| 武汉彩印包装有限公司| 蓝星化工机械有限公司| 武汉乐薇贸易有限公司| 万博汽车贸易有限公司| 昆山电器配件有限公司| 郑州购物广场有限公司| 深圳华强电子世界有限公司| 博迈医疗器械有限公司| 东莞电子制造有限公司招聘| 深圳美盛电子有限公司| 深圳智凯电子有限公司| 宏讯电子工业有限公司| 北京青牛技术有限公司| 合众 佛山 化工有限公司| 大连鑫兴家具有限公司| 旭光聚合物有限公司| 重庆润通动力有限公司| 南京高立机械有限公司| 科贸有限公司 英文| 黎东幕墙装饰有限公司| 东莞 福 服装 有限公司| 有限公司的股权继承| 泰山体育器材有限公司| 化工有限公司 草甘膦| 三水不锈钢有限公司| 青岛劳联劳务有限公司| 科顺防水材料有限公司| 广州市科达有限公司| 华能电器有限公司待遇| 置业建筑工程有限公司| 比泽尔压缩机有限公司| 祥恒莆田包装有限公司| 嘉兴维当贸易有限公司| 成都金控担保有限公司| 华贸 工程有限公司| 群乔电气成套有限公司| 之江贵金属经营有限公司| 亿鑫建筑工程有限公司| 德科电子(苏州)有限公司| 冠美办公家具有限公司| 莆田涵江鞋业有限公司| 昊昱有限公司怎么样| 杭州明置业有限公司| 川崎机器人有限公司| 山东达驰有限公司招聘| 深圳科瑞普光电有限公司| ykk拉链有限公司| 廊坊埃意电子有限公司| 上海迪卡侬体育用品有限公司| 恒生进出口有限公司| 深圳市科王有限公司| 深圳飞荣达有限公司| 杭州恒力机械有限公司| 广州江森座椅有限公司| 石家庄双联化工有限公司| 皇家建筑系统有限公司| 科美 杭州 机械有限公司| 杉杉新能源有限公司| 江西鸽鸽食品有限公司| 武汉正维电子有限公司| 家庭生活用品有限公司| 烟台 传动技术有限公司| 华诚国际贸易有限公司| 莱尼电气系统 济宁 有限公司| 中山仓储设备有限公司| 禹王防水建材有限公司| 北京 汇博隆仪器有限公司| 马鞍山市锻造有限公司| 桂林自动化有限公司| 北京天信担保有限公司| 深圳乐声电子有限公司| 余姚汽车配件有限公司| 上海大侨机械有限公司| 成都西部石油装备有限公司| 东莞市建筑设计院有限公司| 梦田服装(上海)有限公司| 温州市瓯海眼镜有限公司| 苏州好特斯模具有限公司| 成都全能保健有限公司| 济南四机数控有限公司| 扬州市管件有限公司| 金面子化妆品有限公司| 四川国锂锂材料有限公司| 上海 辉 有限公司待遇| 腾飞塑料制品有限公司| sew-电机 苏州 有限公司| 青岛朗盛贵金属有限公司| 天长市纺机有限公司| 苏州吸尘器有限公司| 上海丰艺舍有限公司| 东莞的富相电子有限公司| 陕西同力重工有限公司| 成都合金材料有限公司| 郑起起重设备有限公司| 华诚博远建筑设计有限公司| 深圳宏讯电子有限公司| 泰州 电气设备有限公司| 青岛川海工程有限公司| 常州达易国际贸易有限公司| 上海朗达电缆 有限公司| 中旺建筑工程有限公司| 山东力士德工程机械有限公司| 河马信息技术有限公司| 德邻联合工程有限公司| 雅培医疗器械有限公司| 睿聘实业有限公司招聘信息| 内蒙古蒙古王酒业有限公司| 豪迈木业机械有限公司| 一汽四川专用汽车有限公司 | 中环联合北京认证有限公司| 深圳海信电子有限公司| 台州东方机械有限公司| 交运汽车动力有限公司| 北京京蔬种子有限公司| 新佳装饰工程有限公司| 佛山科霖电器有限公司| 南通建材有限公司地址| 中旗新材料有限公司| 阿美德格电机有限公司| 宝珍香食品有限公司| 东岳工程机械有限公司| 永宏建设工程有限公司| 威海宝威渔具有限公司| 深圳欧尚服饰有限公司| 腾达设备有限公司怎么样| 长欣胶业上海)有限公司| 中山市世宇有限公司| 蓝西实验设备有限公司| 南京卫岗乳之宝有限公司| 江苏塑业发展有限公司| 怡化信息技术有限公司| 常州国振机械有限公司| 郑州化玻仪器有限公司| 美柯达探伤器材有限公司| 苏州福裕电子有限公司| 上海展和贸易有限公司| 河南通达电缆有限公司| 胜利医疗器械有限公司| 东之尼电子有限公司| 上海展双实业有限公司| 连云港通信有限公司| 上海银泰置业有限公司| 艾菲(武汉)有限公司| 南通马可迅车轮有限公司| 重庆澳清贸易有限公司| 河南建达工程有限公司| 郑东新区热电有限公司| 杏辉天力杭州药业有限公司| 迈龙汽车用品有限公司| 杭州康达卫浴有限公司| 武汉第二电缆有限公司| 日立金属上海有限公司| 福州艺佳工艺品有限公司| 宁波城市的发展有限公司| 北京北陆药业有限公司| 无锡优妮姿有限公司| 山东滨州机械制造有限公司| 长园电子材料有限公司| 布雷博制动系统有限公司| 深圳健康元有限公司| 深圳市深祥有限公司| 合肥丰乐种业有限公司| 上海币达信息技术有限公司| 浙江海宁服饰有限公司| 九盈机械有限公司广州| 惠州大亚湾鸿有限公司| 中化岩土工程有限公司| 胜华波电器有限公司| 科德宝滤清器有限公司| 东莞米亚精密金属有限公司| 宇旭时装 上海 有限公司| 德隆盛实业有限公司| 张万福珠宝有限公司| 纸业贸易有限公司招聘| 深圳市贝贝贸易有限公司| 青岛 工业气体有限公司| 恒立(国际)有限公司| 苏州麦克斯有限公司| 华艺工程设计有限公司| 永嘉县上嘉阀门有限公司| 高要宏润陶瓷有限公司| 北京实木家具有限公司| 浙江力夫机电制造有限公司| 智力多食品有限公司| 齐思信息技术有限公司| 浙江朝晖过滤技术有限公司| 国星生物化学有限公司| 百亨特制泵有限公司| 富林医疗器械有限公司| 青岛海洋发展有限公司| 深圳市源鸿贸易有限公司| 山东啤酒有限公司地址| 中达金属制品有限公司| 品睿装饰工程有限公司| 顺泰建筑工程有限公司| 重庆民生轮船有限公司| 永久自行车有限公司| 武汉华润物业有限公司| 威怡化工 苏州 有限公司| 广州化工设备有限公司| 上海美顿贸易有限公司| 深圳艾礼富电子有限公司| 鞍钢联众广州有限公司| 科湃思特电气有限公司| 重庆江小白有限公司| 联德机械杭州有限公司| 中山食品进出口有限公司| 扬子江石化有限公司| 清睿信息技术有限公司| 深圳市美品电子有限公司| 顺天建筑工程有限公司| 浦东进出口有限公司| 阿科普机电工程有限公司| 广州佳叶贸易有限公司| 台州亿比塑业有限公司| 东营万通港航有限公司| 深圳旭美电子有限公司| 浙江园林工具有限公司| 北京金美仕贸易有限公司| 拜耳技术工程有限公司| 英伟达半导体有限公司| 山东宏济堂医药有限公司| 山东黄金莱州有限公司| 伟创电脑(苏州)有限公司| 洪都电动车有限公司| 鸿泰自动化设备有限公司| 东风制动件有限公司| 芯海微电子有限公司| 汉捷机械部件常州有限公司| 荣发展有限公司怎么样| 品睿装饰工程有限公司| 山东福康食品有限公司| 南亚塑胶工业 郑州 有限公司| 哈尔滨动物药业有限公司| 王牌电器(成都)有限公司| 福州福药制药有限公司| 东莞品翔电子塑胶有限公司| 四川蓬莱盐化有限公司| 天原工创装饰设计工程有限公司 | 昆山 稳得电子有限公司| 山东水产有限公司怎么样| 汇金石(厦门)有限公司| 漯河亲亲食品有限公司| 东莞杰群电子有限公司| 创丰机械有限公司招| 巨鑫实业有限公司招聘| 浙江电力设备制造有限公司| 科锐塑胶工业有限公司| 中工信融信息技术有限公司| 深圳迪斯科有限公司| 龙璟印刷(深圳)有限公司| 奥莱仕电子有限公司| 华盛电路板有限公司| smc (广州)气动元件有限公司| 三洋电机(深圳)有限公司| 天津市津海钢管有限公司| 华粤五金 深圳 有限公司| 苏菲克电路有限公司| 信息智能技术有限公司怎么样 | 佛山德造电器有限公司| 北京北陆药业有限公司| 深圳华峰实业有限公司| 临沂教学设备有限公司| 联想信息技术有限公司| 索斯科上海有限公司| 青岛瑞源工程有限公司| 重庆联庆仪表有限公司| 时唛特电器有限公司| 哈尔滨宏益实业有限公司| 风凯换热器制造有限公司| 鹏威 厦门 工业有限公司| 百恒装饰工程有限公司| 上海赛金生物有限公司| 安晶龙电子有限公司| 深圳飞龙电子有限公司| 山西 防护设备有限公司| 上海 镑 有限公司| 宏达电子(苏州)有限公司| 吴忠市建筑工程有限公司| 陕西地理测绘有限公司| 永康市包装有限公司| 凯斯库汽车部件有限公司| 苏州康力骨科有限公司| 昆仑石油化工有限公司| 福建粮油食品有限公司| 杭州华美电器有限公司| 河南新乡化工有限公司| 万力实业发展有限公司| 陕西金地置业有限公司| 合肥调味品有限公司| 郑州中粮粮油有限公司| 大唐微电子有限公司| 泰克上海橡胶有限公司| 上海东丰五金有限公司| 广州市华品塑料有限公司| 南汽模具装备有限公司| 奥盛新材料有限公司| 广卓装饰工程有限公司| 奔泰电子机电设备青岛有限公司| 凡登新型金属材料技术有限公司 | 深圳科浩电子有限公司| 威怡(苏州)化工有限公司| 天娇红食品有限公司| 百事可乐沈阳有限公司| 晋江市安海食品有限公司| 大连家用电器有限公司| 科嘉霖电器有限公司| 深圳市 演艺有限公司| 深圳市易能电气有限公司| 张家港圣汇有限公司| 苏州君耀光电有限公司| 上海陆家嘴物业有限公司| 格威精密机械有限公司| 深圳百富电子有限公司| 0559 有限公司| 广州安的安皮具有限公司| 东科半导体有限公司| 郑州人才派遣有限公司| 康的电器有限公司官网| 北京凯新认证有限公司| 上海新城置业有限公司| 恒泰汽车零部件有限公司| 重庆烟叶复烤有限公司| 大地电影院线有限公司| 棕榈园林工程有限公司| 福田专用汽车有限公司| 潍坊市进出口有限公司| 天津欧梯克有限公司| 嘉兴于氏电器有限公司| 锐珂上海医疗器材有限公司| 合肥壹加壹有限公司| 方向电子(深圳)有限公司| 醴陵恒茂电子有限公司| 珠海长宇建筑设计有限公司| 湖北骆驼蓄电池有限公司| 南宁三峰能源有限公司| 装修艺装饰设计有限公司| 坤能贵金属有限公司| 浙江红五环机械有限公司| 捷高国际货运有限公司| 青岛环卫设备有限公司| 亿铖达焊锡有限公司| 台祥机械设备有限公司| 北京贝能达有限公司| 康明斯西安发动机有限公司| 无锡 艺术品有限公司| 玛连尼法亚机械有限公司| 浙江圣氏生物有限公司| 天津精密五金有限公司| 华商电力管道有限公司| 万事成工贸有限公司| 玉环铜阀门有限公司| 苏州水星海事技术有限公司| 万家购科贸有限公司| 日照品润食品有限公司| 夏垫佳美体育用品有限公司| 广东永旺商业有限公司| 奥朵家饰用品有限公司| 一拖洛阳工程机械有限公司| 马钢工程技术有限公司| 千岛湖发展有限公司| 大华家具有限公司招聘| 科仪电子(上海)有限公司| 深圳市凯瑞光电有限公司| 重庆达环保工程有限公司| 上海真诺仪表有限公司| 南昌光明化验设备有限公司| 五金制品有限公司简介| 厦门盈众汽车有限公司| 北京北内发动机有限公司| 焦作科瑞森有限公司| 洁力环保设备有限公司| 上海久之游有限公司| 嘉科工程(上海)有限公司| 广州竞和机械有限公司| 百养堂实业有限公司| 史赛克医疗器械有限公司| 烟台通信工程有限公司| 长沙电子器材有限公司| 帝斯曼工程塑料有限公司| 温州建筑劳务有限公司| 广州友迪资讯有限公司| 广西南宁工程机械有限公司 | 捷力特工具有限公司| 铜川 食品 有限公司| 富海电子深圳有限公司| 铭鸿建设工程有限公司| 无锡东舟船舶有限公司| 张家港华盛有限公司| 百威国际啤酒有限公司| 深圳万联电子有限公司| 深圳宏宇电子有限公司| 南京新港建设发展有限公司| 即富信息技术有限公司| 壳威石油化工有限公司| 上海 纤维有限公司招聘| 苏州博众精工有限公司| 西安华润置地有限公司| 深圳奥海光电有限公司| 欧品电子(昆山)有限公司| 深圳欧瑞博电子有限公司| 斯泰潘南京化学有限公司| 苏州禾盛新型材料有限公司| 铁道建设工程有限公司| 科嘉霖电器有限公司| 合生元生物制品有限公司| 李尔汽车系统扬州有限公司| 汉菱生物工程有限公司| 华伟表面处理技术有限公司| 贝恩医疗设备广州有限公司| 上海环卫设备有限公司| 雅美姿化妆品有限公司| 威特电梯部件苏州有限公司| 彩印机械厂有限公司| 环宇环保设备有限公司| 济南天辰机器有限公司| 乐金电子天津有限公司| 长征国际贸易有限公司| 博雅木业有限公司招聘| 山东建材有限公司菏泽| 费森尤斯医药上海有限公司| 广威机械制造有限公司| 瑞景上光电 深圳有限公司| 江阴海润光伏有限公司| 杭州优哈箱包有限公司 it| 陕西电子有限公司招聘信息| 合一电器 深圳 有限公司| 亲和力旅游有限公司| 上海升亮电子有限公司| 河北彩涂板有限公司| 金源环境工程有限公司| 创瑞科电子有限公司| 上海连锁发展有限公司| 济南东泰机械有限公司| 杭州东芝电子有限公司| 戚墅堰机车车辆有限公司| 三和塑料制品有限公司| 任丘市机动车配件有限公司| 杭州比菲进出口有限公司| 精佳精密模具有限公司| 重庆智能设备有限公司| 南通博建设工程有限公司| 重庆 农林 有限公司| 瑞天环境工程有限公司| 敏华实业 吴江 有限公司| 河南宏业建设有限公司| 惠州tcl 移动通信有限公司| 有限公司变更个人独资| 中远(香港)航运有限公司| 仕瑞达自动化设备有限公司| 个人工作能力有限公司| 丰胜广州建材有限公司| 惠州友威光电有限公司| 优耐电子深圳有限公司| 上海尤顺汽车部件有限公司| 建家装饰工程有限公司| 安徽业峰工程有限公司| 长春佛吉亚排气系统有限公司| 山东太平洋光缆有限公司| 侨信装饰工程有限公司| 华展电子深圳有限公司| 永手袋(深圳)有限公司| 创世纪装饰工程有限公司| 绵阳汽车配件有限公司| 威盛纳斯医疗器械有限公司| 派盛国际贸易有限公司| 蜡笔小新(天津)有限公司| 乐高玩具嘉兴有限公司| 四川多晶硅有限公司| 上海集优机械有限公司| 河南亚伟市政工程有限公司| 株洲电力机车有限公司招聘 | 青岛吉明美有限公司| 史丹利深圳有限公司| 世纪爱晚置业有限公司| 深圳飞龙电子有限公司| 巩诚电装(重庆)有限公司| 武汉新大酒店有限公司| 韶关 电机有限公司| sew-电机 苏州 有限公司| 深圳市宝捷电子有限公司| 卡博特 天津 有限公司| 特立捷苏州有限公司| 扬州园林建设有限公司| 中山市宝莱有限公司| 潍坊小额贷款有限公司| 华强激光电子有限公司| 四川防火门窗有限公司| 厦门厦控电器有限公司| 威海达而达机械有限公司| 华特汽车零部件有限公司| 升柯式印刷有限公司| 高低压电器有限公司| 大连贷款有限公司电话| 水星海事技术苏州有限公司| 深圳筑道建筑工程设计有限公司 | 上海盾邦阀门有限公司| 青岛高校软控有限公司| 乐扣乐扣(苏州)有限公司| 扬州 有限公司 技术支持| 利丰贸易深圳有限公司| 百业建设顾问有限公司| 合润麟食品有限公司| 重庆京宏源有限公司| 深圳瑞景上光电有限公司| 奥美斯电器有限公司| 业成光电深圳有限公司| 上海鑫宝煤化有限公司| 安得利卫浴有限公司| 沈阳机床铸造有限公司| 诚建教育 北京有限公司| 石家庄电线电缆有限公司| 三和塑胶制品有限公司| 银川建筑工程有限公司| 苏州光普电子有限公司| 龙源催化剂有限公司| 深圳市森光电子有限公司| 日发汽车零部件有限公司| 厦门厦铝铝材有限公司| 广东建筑材料有限公司| 尚程国际贸易有限公司| 广州通达电气有限公司| 安徽华茂纺织有限公司| 宁波永享铜管道有限公司| 鼎泰鑫电子有限公司| 湖南晓光模具有限公司| 智慧产业有限公司招聘| 佳达五金制品有限公司| 福乐国际贸易有限公司| 洋河名酒酒业有限公司| 佛山市 永兴有限公司| 重庆新型材料有限公司| 上海颖与贸易有限公司招聘| 福伊特水电设备有限公司| 中粮华夏葡萄酒有限公司| 阿方提贸易有限公司| 星光树脂昆山有限公司| 常州大茂车灯有限公司| 沃德(天津)传动有限公司| 协润装饰建材有限公司| 中信隆进出口有限公司| 泰铭金属制品有限公司| 深圳华兴达有限公司| tcm叉车有限公司| 博一光电(深圳)有限公司| 深圳云印技术有限公司| 苏州厨房电器有限公司| 广乐高速公路有限公司| 汉高化妆品有限公司| 一康医疗设备实业有限公司| 维用精密机械有限公司| 深圳浩通电子有限公司| 苏州金刚石电机有限公司| 氟塑防腐设备有限公司| 圳市华金电子有限公司| 雅蒂化妆品有限公司| 江西赣锋锂业有限公司| 联友进出口有限公司| 大自然装饰有限公司| 深圳鑫彩光电有限公司| 沈阳万锦置业有限公司| 东芝变压器有限公司| 防腐涂装工程有限公司| 莱州精密铸造有限公司| 新荣华食品有限公司| 利亚华南便利店有限公司| 环球金贸易有限公司| 徐州市建设工程监理有限公司| 佛山源中汇有限公司| 深圳市京瑞有限公司| 深圳四季春有限公司| 骊住建材(苏州)有限公司| 东莞注塑机有限公司|