Question

J'utilise .NET Remoting. Mon serveur / hébergeur est un service Windows. Cela fonctionnera parfois très bien et d’autres fois, il traitera une demande et ensuite, il ne sera plus traité (jusqu’à ce que je le relance). Il s’exécute en tant que service Windows. Voici le code du service Windows:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;
using System.ServiceProcess;
using System.Text;
using Remoting;

namespace CreateReview
{
    public partial class Service1 : ServiceBase
    {
        public Service1()
        {
            InitializeComponent();
        }

        readonly TcpChannel channel = new TcpChannel(8180);

        protected override void OnStart(string[] args)
        {
            // Create an instance of a channel
            ChannelServices.RegisterChannel(channel, false);

            // Register as an available service with the name HelloWorld
            RemotingConfiguration.RegisterWellKnownServiceType(
                typeof(SampleObject),
                "SetupReview",
                WellKnownObjectMode.SingleCall);
        }

        protected override void OnStop()
        {

        }
    }
}

Merci pour toute aide offerte.

Vaccano

Était-ce utile?

La solution

En tant que type SingleCall, votre SampleObject sera créé pour chaque appel effectué par le client. Cela me suggère que votre objet est en faute et que vous ne montrez pas ce qu'il fait. Vous devez examiner toutes les dépendances dont il dispose sur des ressources ou des verrous partagés. Essayez d’écrire du débogage dans le constructeur de SampleObject pour voir jusqu’à quel point l’appel distant peut aller.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top