PDA

View Full Version : TcpSocket و MultiThread



sirwan.bz
سه شنبه 10 تیر 1393, 14:04 عصر
بازم سلام خدمت دوستان عزیز:

من یه پورت اسکنر ساده نوشتم که یه Range از پورت رو از کاربر میگیره و با سوکت اونارو روی یه آی پی چک میکنه

ولی چون داخل حلقه اجرا میشه سرعتش خیلی پایینه حتی برای تعدای کمی از پورت ها.

خوب اینجاست که باید از Thread استفاده کنم ولی مشکل اینجاست که زیاد با Thread آشنایی ندارم و نمیدونم چجوری میشه

این عملیات رو بهش بدم تا برام انجامش بده. یعنی سوکتم رو وارد Thread بکنم.

کامبیز اسدزاده
سه شنبه 10 تیر 1393, 14:20 عصر
بازم سلام خدمت دوستان عزیز:

من یه آی پی اسکنر ساده نوشتم که یه Range از پورت رو از کاربر میگیره و با سوکت اونارو چک میکنه

ولی چون داخل حلقه اجرا میشه سرعتش خیلی پایینه حتی برای تعدای کمی از پورت ها.

خوب اینجاست که باید از Thread استفاده کنم ولی مشکل اینجاست که زیاد با Thread آشنایی ندارم و نمیدونم چجوری میشه

این عملیات رو بهش بدم تا برام انجامش بده. یعنی سوکتم رو وارد Thread بکنم.

به مستندات یه نگاهی بندازید : http://qt-project.org/doc/qt-5/qthread.html

amir.bakhtiari
چهارشنبه 11 تیر 1393, 00:26 صبح
خوب اینجاست که باید از Thread استفاده کنم ولی مشکل اینجاست که زیاد با Thread آشنایی ندارم و نمیدونم چجوری میشه

این عملیات رو بهش بدم تا برام انجامش بده. یعنی سوکتم رو وارد Thread بکنم.

اینم یه لینک آموزش کیوته - ک یه قسمتش در حد معمولی ولی قابل فهم در مورد Thread توضیح داده
عالیه

اینجا (http://barnamenevis.org/showthread.php?436304-%D9%85%D8%B9%D8%B1%D9%81%DB%8C-%D9%88-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-C-%E2%80%8E%E2%80%8E-Qt-%D8%A8%D9%87-%D8%B5%D9%88%D8%B1%D8%AA-%DA%AF%D8%A7%D9%85-%D8%A8%D9%87-%DA%AF%D8%A7%D9%85)

negative60
چهارشنبه 11 تیر 1393, 09:46 صبح
آيپی اسکنر پردازش خاصی انجام نميده که نياز به تريد داشته باشه احتمالاً شما از يک سوکت داريد برای اسکن استفاده ميکنيد پيشنهاد ميکنم يا سوکت رو به صورت ارايه در بياريد يا بهتر اينه روند اسکن رو در يک کلاس پياده کنيد و از اون کلاس ارايه بسازيد و به راحتی اسکن رو انجام بديد

در مورد اسکن آيپی های اينترنتی بايد بين فواصل هر اسکن وقفه ايجاد کنيد در غير اين صورت با اين سرعت اينترنت اسکن به درستی انجام نخواهد شد

sirwan.bz
چهارشنبه 11 تیر 1393, 17:26 عصر
معذرت میخوام دوستان یه چیزی رو باید اینجا اصلاح کنم و اونم اینه که منظور بنده پورت اسکنر بود ولی به دلیل عدم حواس به جای اون نوشتم آی پی اسکنر.:اشتباه:

sirwan.bz
چهارشنبه 11 تیر 1393, 17:59 عصر
آيپی اسکنر پردازش خاصی انجام نميده که نياز به تريد داشته باشه احتمالاً شما از يک سوکت داريد برای اسکن استفاده ميکنيد پيشنهاد ميکنم يا سوکت رو به صورت ارايه در بياريد يا بهتر اينه روند اسکن رو در يک کلاس پياده کنيد و از اون کلاس ارايه بسازيد و به راحتی اسکن رو انجام بديد

در مورد اسکن آيپی های اينترنتی بايد بين فواصل هر اسکن وقفه ايجاد کنيد در غير اين صورت با اين سرعت اينترنت اسکن به درستی انجام نخواهد شد

اینکارو برای پورت اسکنر هم میشه انجام داد؟

میشه بیشتر توضیح بدین یا اگه امکان داره لطفا مثالی بزنید.

negative60
چهارشنبه 11 تیر 1393, 19:49 عصر
فرقی نداره روش همونه .
يه مثال ساده نوشتم روش دستت مياد در ضمن سيگنال portisclosed رو تعريف نکردم کلاس هايی هم که new شده بعد از دريافت سيگنال از طرفشون حتماً delete کنيد بقيش رو خودت کامل کن .