{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,5,5]],"date-time":"2024-05-05T20:40:22Z","timestamp":1714941622361},"reference-count":62,"publisher":"Springer Science and Business Media LLC","issue":"5","license":[{"start":{"date-parts":[[2013,2,12]],"date-time":"2013-02-12T00:00:00Z","timestamp":1360627200000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Int J Parallel Prog"],"published-print":{"date-parts":[[2013,10]]},"DOI":"10.1007\/s10766-013-0238-9","type":"journal-article","created":{"date-parts":[[2013,2,11]],"date-time":"2013-02-11T06:40:11Z","timestamp":1360564811000},"page":"621-681","source":"Crossref","is-referenced-by-count":4,"title":["Parallel Task for Parallelising Object-Oriented Desktop Applications"],"prefix":"10.1007","volume":"41","author":[{"given":"Nasser","family":"Giacaman","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Oliver","family":"Sinnen","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2013,2,12]]},"reference":[{"issue":"7","key":"238_CR1","doi-asserted-by":"crossref","first-page":"63","DOI":"10.1145\/1095408.1095423","volume":"3","author":"M Creeger","year":"2005","unstructured":"Creeger, M.: Multicore CPUs for the masses. Queue 3(7), 63\u201364 (2005)","journal-title":"Queue"},{"key":"238_CR2","doi-asserted-by":"crossref","unstructured":"Bull, J.M., Smith, L.A., Pottage, L., Freeman, R.: Benchmarking Java against C and Fortran for scientific applications. In: JGI \u201901: Proceedings of the 2001 Joint ACM-ISCOPE Conference on Java Grande, New York, NY, USA. ACM, pp. 97\u2013105 (2001)","DOI":"10.1145\/376656.376823"},{"key":"238_CR3","unstructured":"TIOBE Software BV (2008) TIOBE programming community index. http:\/\/www.tiobe.com\/tpci.htm"},{"issue":"7","key":"238_CR4","doi-asserted-by":"crossref","first-page":"54","DOI":"10.1145\/1095408.1095421","volume":"3","author":"H Sutter","year":"2005","unstructured":"Sutter, H., Larus, J.: Software and the concurrency revolution. Queue 3(7), 54\u201362 (2005)","journal-title":"Queue"},{"issue":"7","key":"238_CR5","doi-asserted-by":"crossref","first-page":"48","DOI":"10.1145\/1095408.1095420","volume":"3","author":"LA Barroso","year":"2005","unstructured":"Barroso, L.A.: The price of performance. Queue 3(7), 48\u201353 (2005)","journal-title":"Queue"},{"key":"238_CR6","volume-title":"Concurrent Programming in Java: Design Principles and Patterns","author":"D Lea","year":"1999","unstructured":"Lea, D.: Concurrent Programming in Java: Design Principles and Patterns, 2nd edn. Addison-Wesley, Reading, MA (1999)","edition":"2"},{"key":"238_CR7","unstructured":"Ludwig, E.: Multi-threaded user interfaces in Java. PhD thesis, University of Osnabr\u00fcck, Germany MaY 2006"},{"key":"238_CR8","volume-title":"Java Thread Programming","author":"P Hyde","year":"2001","unstructured":"Hyde, P.: Java Thread Programming. Sams, Indianapolis, IN (2001)"},{"key":"238_CR9","volume-title":"Java Concurrency in Practice","author":"B Goetz","year":"2006","unstructured":"Goetz, B., Peierls, T., Bloch, J., Bowbeer, J., Holmes, D., Lea, D.: Java Concurrency in Practice. Addison-Wesley Professional, Reading, MA (2006)"},{"key":"238_CR10","unstructured":"Muller, H., Walrath, K.: Threads and swing. The swing connection. http:\/\/java.sun.com\/products\/jfc\/tsc\/articles\/threads\/threads1.html (2008)"},{"key":"238_CR11","doi-asserted-by":"crossref","unstructured":"Buddhikot, M., Goil, S.: Throughput computing with chip multithreading and clusters. In: Lecture Notes in Computer Science, vol. 3769, pp. 128\u2013136 (2005)","DOI":"10.1007\/11602569_17"},{"key":"238_CR12","volume-title":"Java Threads","author":"S Oaks","year":"2004","unstructured":"Oaks, S., Wong, H.: Java Threads, 3rd edn. O\u2019Reilly Media Inc, Sebastopol, CA (2004)","edition":"3"},{"key":"238_CR13","doi-asserted-by":"crossref","unstructured":"Harbulot, B., Gurd, J.R.: Using AspectJ to separate concerns in parallel scientific Java code. In: AOSD \u201904: Proceedings of the 3rd International Conference on Aspect-oriented Software Development, New York, NY, USA. ACM Press, pp. 122\u2013131 (2004)","DOI":"10.1145\/976270.976286"},{"issue":"10","key":"238_CR14","doi-asserted-by":"crossref","first-page":"917","DOI":"10.1002\/1096-9128(20000825)12:10<917::AID-CPE517>3.0.CO;2-F","volume":"12","author":"M Philippsen","year":"2000","unstructured":"Philippsen, M., Philippsen, M.: A survey of concurrent object-oriented languages. Concurr. Practice Exp. 12(10), 917\u2013980 (2000)","journal-title":"Concurr. Practice Exp."},{"key":"238_CR15","doi-asserted-by":"crossref","unstructured":"Giacaman, N., Sinnen, O.: Parallel task for parallelizing object-oriented desktop applications. In: IEEE International Workshop on Parallel and Distributed Scientific and Engineering Computing (PDSEC) held in conjunction with 24th IEEE International Parallel and Distributed Processing Symposium (IPDPS\u201910), Atlanta, USA (2010)","DOI":"10.1109\/IPDPSW.2010.5470765"},{"key":"238_CR16","unstructured":"Microsoft.: Parallel extensions to the .NET framework community technology preview (CTP), June 2008"},{"key":"238_CR17","unstructured":"Oracle.: java.util.concurrent ExecutorService. http:\/\/docs.oracle.com\/javase\/1.5.0\/docs\/api\/java\/util\/concurrent\/ExecutorService.html (2010)"},{"key":"238_CR18","unstructured":"Blumofe, R.D.: Executing multithreaded programs efficiently. Ph.D. thesis, Massachusetts Institute of Technology (1995)"},{"issue":"4","key":"238_CR19","doi-asserted-by":"crossref","first-page":"501","DOI":"10.1145\/4472.4478","volume":"7","author":"J Robert","year":"1985","unstructured":"Robert, J., Halstead, H.: Multilisp: a language for concurrent symbolic computation. ACM Trans. Program. Lang. Syst. 7(4), 501\u2013538 (1985)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"238_CR20","unstructured":"Sutter, H.: Interrupt politely. Dr. Dobb\u2019s Journal, April 2008"},{"key":"238_CR21","doi-asserted-by":"crossref","unstructured":"Fisher, A.L., Ghuloum, A.M.: Parallelizing complex scans and reductions. In: PLDI \u201994: Proceedings of the ACM SIGPLAN 1994 Conference on Programming Language Design and Implementation, New York, NY, USA. ACM, pp. 135\u2013146 (1994)","DOI":"10.1145\/178243.178255"},{"key":"238_CR22","unstructured":"Giacaman, N., Sinnen, O.: Parallel iterator for parallelising object oriented applications. In: The 7th WSEAS International Conference on Software Engineering, Parallel and Distributed Systems (SEPADS \u201908). UK, Cambridge (2008)"},{"key":"238_CR23","volume-title":"Modern multithreading","author":"RH Carver","year":"2006","unstructured":"Carver, R.H., Tai, K.-C.: Modern multithreading. Wiley, London (2006)"},{"key":"238_CR24","unstructured":"Nokia Corporation.: Signals & slots. http:\/\/qt-project.org\/doc\/qt-4.8\/signalsandslots.html (2011)"},{"key":"238_CR25","unstructured":"Gregor, D.: Boost signals. http:\/\/www.boost.org\/doc\/libs\/1_49_0\/doc\/html\/signals.html (2004)"},{"key":"238_CR26","volume-title":"The Object-oriented Thought Process","author":"M Weisfeld","year":"2008","unstructured":"Weisfeld, M.: The Object-oriented Thought Process, 3rd edn. Addison-Wesley Professional, Reading, MA (2008)","edition":"3"},{"key":"238_CR27","doi-asserted-by":"crossref","unstructured":"Matsuoka, S., Yonezawa, A.: Analysis of Inheritance Anomaly in Object-oriented Concurrent Programming Languages. Research Directions in Concurrent Object-oriented Programming, Cambridge, MA, USA. MIT Press, pp. 107\u2013150 (1993)","DOI":"10.7551\/mitpress\/2087.003.0007"},{"key":"238_CR28","doi-asserted-by":"crossref","unstructured":"Milicia G., Sassone V.: The inheritance anomaly: ten years after. In: SAC \u201904: Proceedings of the 2004 ACM Symposium on Applied Computing, New York, NY, USA. ACM, pp. 1267\u20131274 (2004)","DOI":"10.1145\/967900.968159"},{"issue":"12","key":"238_CR29","doi-asserted-by":"crossref","first-page":"683","DOI":"10.1145\/361227.361230","volume":"18","author":"JB Goodenough","year":"1975","unstructured":"Goodenough, J.B.: Exception handling: issues and a proposed notation. Commun. ACM 18(12), 683\u2013696 (1975)","journal-title":"Commun. ACM"},{"key":"238_CR30","unstructured":"Zakhour, S., Hommel, S., Royal, J., Rabinovitch, I., Risser, T., Hoeber, M.: The Java Tutorial: A Short Course on the Basics, 4 edn. Prentice Hall, Englewood Cliffs, NJ (2006)"},{"key":"238_CR31","unstructured":"Sun Microsystems.: JavaCC Home. https:\/\/javacc.dev.java.net\/ (2009)"},{"key":"238_CR32","doi-asserted-by":"crossref","DOI":"10.1002\/0470121173","volume-title":"Task Scheduling for Parallel Systems","author":"O Sinnen","year":"2007","unstructured":"Sinnen, O.: Task Scheduling for Parallel Systems. Wiley, London (2007)"},{"key":"238_CR33","doi-asserted-by":"crossref","unstructured":"Acar, U.A., Blelloch, G.E., Blumofe, R.D.: The data locality of work stealing. In: SPAA \u201900: Proceedings of the Twelfth Annual ACM Symposium on Parallel Algorithms and Architectures, New York, NY, USA. ACM, pp. 1\u201312 (2000)","DOI":"10.1145\/341800.341801"},{"key":"238_CR34","doi-asserted-by":"crossref","unstructured":"Lu, W., Gannon, D.: Parallel XML processing by work stealing. In: SOCP \u201907: Proceedings of the 2007 Workshop on Service-oriented Computing Performance: Aspects, Issues, and Approaches, New York, NY, USA. ACM, pp. 31\u201338 (2007)","DOI":"10.1145\/1272457.1272462"},{"key":"238_CR35","doi-asserted-by":"crossref","unstructured":"Burton, W.F., Sleep, R.M.: Executing functional programs on a virtual tree of processors. In: FPCA \u201981: Proceedings of the 1981 Conference on Functional Programming Languages and Computer Architecture, New York, NY, USA. ACM, pp. 187\u2013194 (1981)","DOI":"10.1145\/800223.806778"},{"issue":"5","key":"238_CR36","doi-asserted-by":"crossref","first-page":"720","DOI":"10.1145\/324133.324234","volume":"46","author":"RD Blumofe","year":"1999","unstructured":"Blumofe, R.D., Leiserson, C.E.: Scheduling multithreaded computations by work stealing. J. ACM 46(5), 720\u2013748 (1999)","journal-title":"J. ACM"},{"issue":"1","key":"238_CR37","doi-asserted-by":"crossref","first-page":"266","DOI":"10.1145\/277858.277939","volume":"26","author":"RD Blumofe","year":"1998","unstructured":"Blumofe, R.D., Papadopoulos, D.: The performance of work stealing in multiprogrammed environments (extended abstract). ACM SIGMETRICS Perform. Eval. Rev. 26(1), 266\u2013267 (1998)","journal-title":"ACM SIGMETRICS Perform. Eval. Rev."},{"key":"238_CR38","doi-asserted-by":"crossref","unstructured":"Guo, Y., Barik, R., Raman, R., Sarkar, V.: Work-first and help-first scheduling policies for async-finish task parallelism. In: IEEE International Symposium on Parallel and Distributed Processing (IPDPS 2009) (2009)","DOI":"10.1109\/IPDPS.2009.5161079"},{"issue":"4","key":"238_CR39","doi-asserted-by":"crossref","first-page":"397","DOI":"10.1016\/0315-0860(77)90076-3","volume":"4","author":"PJ Campbell","year":"1977","unstructured":"Campbell, P.J.: Gauss and the eight queens problem: a study in miniature of the propagation of historical error. Historia Mathematica 4(4), 397\u2013404 (1977)","journal-title":"Historia Mathematica"},{"key":"238_CR40","unstructured":"Sutter, H.: The pillars of concurrency. Dr. Dobb\u2019s Journal, August 2007"},{"key":"238_CR41","unstructured":"Microsoft.: MSDN library, improving ASP.NET performance. http:\/\/msdn.microsoft.com\/en-us\/library\/ff647787.aspx (2012)"},{"key":"238_CR42","volume-title":"Designing and Engineering Time: The Psychology of Time Perception in Software","author":"SC Seow","year":"2008","unstructured":"Seow, S.C.: Designing and Engineering Time: The Psychology of Time Perception in Software. Addison-Wesley, Reading, MA (2008)"},{"key":"238_CR43","unstructured":"Sun Microsystems Inc.: Concurrency in swing. The Java tutorials. http:\/\/java.sun.com\/docs\/books\/tutorial\/uiswing\/concurrency\/index.html (2008)"},{"issue":"3","key":"238_CR44","doi-asserted-by":"crossref","first-page":"291","DOI":"10.1145\/292469.292470","volume":"30","author":"J-P Briot","year":"1998","unstructured":"Briot, J.-P., Guerraoui, R., Lohr, K.-P.: Concurrency and distribution in object-oriented programming. ACM Comput. Surv. 30(3), 291\u2013329 (1998)","journal-title":"ACM Comput. Surv."},{"issue":"8","key":"238_CR45","doi-asserted-by":"crossref","first-page":"13","DOI":"10.1109\/2.303616","volume":"27","author":"R Chandra","year":"1994","unstructured":"Chandra, R., Gupta, A., Hennessy, J.L.: COOL: an object-based language for parallel programming. Computer 27(8), 13\u201326 (1994)","journal-title":"Computer"},{"key":"238_CR46","doi-asserted-by":"crossref","first-page":"323","DOI":"10.1016\/0004-3702(77)90033-9","volume":"8","author":"C Hewitt","year":"1977","unstructured":"Hewitt, C.: Viewing control structures as patterns of passing messages. Artif. Intell. 8, 323\u2013364 (1977)","journal-title":"Artif. Intell."},{"key":"238_CR47","doi-asserted-by":"crossref","DOI":"10.7551\/mitpress\/1086.001.0001","volume-title":"Actors: a model of concurrent computation in distributed systems","author":"G Agha","year":"1986","unstructured":"Agha, G.: Actors: a model of concurrent computation in distributed systems. MIT Press, Cambridge, MA (1986)"},{"key":"238_CR48","doi-asserted-by":"crossref","unstructured":"Blumofe, R.D., Joerg, C.F., Kuszmaul, B.C., Leiserson, C.E., Randall, K.H., Zhou, Y.: Cilk: an efficient multithreaded runtime system. In: PPOPP \u201995: Proceedings of the Fifth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, New York, NY, USA. ACM, pp. 207\u2013216 (1995)","DOI":"10.1145\/209937.209958"},{"key":"238_CR49","unstructured":"Cilk Arts Inc.: Cilk++ programmer\u2019s guide (2009)"},{"key":"238_CR50","unstructured":"Boehm, M.: KDE 4.0 API reference\u2014introduction to ThreadWeaver. http:\/\/api.kde.org\/4.0-api\/kdelibs-apidocs\/threadweaver\/html\/index.html (2012)"},{"key":"238_CR51","unstructured":"Nokia Corporation.: QtConcurrent. http:\/\/doc.trolltech.com\/4.4\/qtconcurrent.html (2008)"},{"key":"238_CR52","unstructured":"Intel Corporation.: Reference for Intel threading building blocks (2010)"},{"key":"238_CR53","unstructured":"OpenMP Architecture Review Board.: OpenMP application program interface version 3.0 (2008)"},{"key":"238_CR54","unstructured":"Sun Microsystems Inc.: Java platform standard edition 6 API specification, December 2006"},{"key":"238_CR55","unstructured":"Bordet, S.: Foxtrot\u2014easy API for JFC\/Swing. http:\/\/foxtrot.sourceforge.net\/ (2012)"},{"key":"238_CR56","doi-asserted-by":"crossref","unstructured":"Charles, P., Grothoff, C., Saraswat, V., Donawa, C., Kielstra, A., Ebcioglu, K., von Praun, C., Sarkar, V.: X10: an object-oriented approach to non-uniform cluster computing. In: OOPSLA \u201905: Proceedings of the 20th Annual ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages, and Applications. New York, NY, USA. ACM Press, pp. 519\u2013538 (2005)","DOI":"10.1145\/1094811.1094852"},{"key":"238_CR57","unstructured":"Microsoft.: Task Parallel Library (TPL). http:\/\/msdn.microsoft.com\/en-us\/library\/dd460717.aspx (2012)"},{"key":"238_CR58","unstructured":"Sutter, H.: Use threads correctly = isolation + asynchronous messages. Dr. Dobb\u2019s Journal, March 2009"},{"key":"238_CR59","unstructured":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne.: The Scala programming language. http:\/\/www.scala-lang.org\/ (2012)"},{"key":"238_CR60","unstructured":"Typesafe Inc.: Akka. http:\/\/akka.io (2012)"},{"issue":"2","key":"238_CR61","doi-asserted-by":"crossref","first-page":"147","DOI":"10.1016\/j.scico.2006.05.008","volume":"63","author":"JS Danaher","year":"2006","unstructured":"Danaher, J.S., Lee, I.-T.A., Leiserson, C.E.: Programming with exceptions in JCilk. Sci. Comput. Program. 63(2), 147\u2013171 (2006)","journal-title":"Sci. Comput. Program."},{"key":"238_CR62","doi-asserted-by":"crossref","unstructured":"Cav\u00e9, V., Zhao, J., Shirako, J., Sarkar, V.: Habanero-Java: the new adventures of old X10. In: Proceedings of the 9th International Conference on Principles and Practice of Programming in Java, pp. 51\u201361 (2011)","DOI":"10.1145\/2093157.2093165"}],"container-title":["International Journal of Parallel Programming"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-013-0238-9.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10766-013-0238-9\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-013-0238-9","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,5,5]],"date-time":"2024-05-05T20:01:30Z","timestamp":1714939290000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10766-013-0238-9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013,2,12]]},"references-count":62,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2013,10]]}},"alternative-id":["238"],"URL":"https:\/\/doi.org\/10.1007\/s10766-013-0238-9","relation":{},"ISSN":["0885-7458","1573-7640"],"issn-type":[{"value":"0885-7458","type":"print"},{"value":"1573-7640","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013,2,12]]}}}