অন্য প্রান্তটি বন্ধ হয়ে গেলে স सॉটটি সমাপ্ত হতে বন্ধ করুন


12

আমি কোনও অ্যাপ্লিকেশন ইনপুট এবং আউটপুটটিকে ইউনিক্স সকেটে পুনর্নির্দেশ করতে এবং অন্য সেশন থেকে সেই সকেটে সংযুক্ত করতে চাই। আমি এখন পর্যন্ত যা করছি তা নিম্নলিখিত:

"সার্ভার" দিকে:

socat EXEC:"command" UNIX-LISTEN:/tmp/comm

এবং "ক্লায়েন্ট" দিকে:

socat UNIX-CONNECT:/tmp/comm -

এটি বেশ ভাল কাজ করে তবে ক্লায়েন্ট-সাইডটি socatশেষ হওয়ার সাথে সাথে সার্ভারটিও বন্ধ হয়ে যায়। তবে আমি এটি চালিয়ে যেতে এবং পরে পুনরায় সংযোগ স্থাপন করতে চাই ... আমি কীভাবে এটি সম্পাদন করব?

উত্তর:


12

আপনার অবশ্যই forkবিকল্প ব্যবহার করতে হবে , যা কোনও শিশু প্রক্রিয়াতে কোনও সংযোগ পরিচালনা করে, আরও সংযোগগুলি পরিচালনা করার জন্য পিতামাতার প্রক্রিয়াটিকে প্রয়াস দেয়।

প্রথম টার্মিনালে:

$ socat - UNIX-LISTEN:/tmp/comm,fork

দ্বিতীয় টার্মিনালে:

$ socat UNIX-CONNECT:/tmp/comm -

দ্বিতীয় টার্মিনালে Ctrl+ টিপুন C, প্রথম টার্মিনালে স্যুইচ করুন এবং দেখুন আপনার সার্ভারটি এখনও চলছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.