    # File lib/phusion_passenger/wsgi/application_spawner.rb, line 53
            def spawn_application(options)
                    a, b = UNIXSocket.pair
                    pid = safe_fork(self.class.to_s, true) do
                            a.close

                            file_descriptors_to_leave_open = [0, 1, 2, b.fileno]
                            NativeSupport.close_all_file_descriptors(file_descriptors_to_leave_open)
                            close_all_io_objects_for_fds(file_descriptors_to_leave_open)

                            run(MessageChannel.new(b), options)
                    end
                    b.close
                    Process.waitpid(pid) rescue nil

                    channel = MessageChannel.new(a)
                    return AppProcess.read_from_channel(channel)
            end